Developers
protocol
Protocol Docs

dYdX Chain - gRPC Gateway docs v1.0.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

A REST interface for state queries, legacy transactions

Query

AllAssets

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/assets/asset', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/assets/asset',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/assets/asset

Queries a list of Asset items.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllAssetsResponse is response type for the AllAssets RPC method.

NameTypeRequiredRestrictionsDescription
» asset[object]falsenonenone
»» idinteger(int64)falsenoneUnique, sequentially-generated.
»» symbolstringfalsenoneThe human readable symbol of the Asset (e.g. USDC, ATOM).Must be uppercase, unique and correspond to the canonical symbol of thefull coin.
»» denomstringfalsenoneThe name of base denomination unit of the Asset (e.g. uatom,'ibc/xxxxx'). Must be unique and match the denom used in the sdk.Cointype in the x/bank module.
»» denom_exponentinteger(int32)falsenonenone
»» has_marketbooleanfalsenonetrue if this Asset has a valid MarketId value.
»» market_idinteger(int64)falsenoneThe Id of the Market associated with this Asset. It acts as theoracle price for the purposes of calculating collateraland margin requirements.
»» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (1 'quantum')to a full coin. For example, if atomic_resolution = -8then an asset_position with base_quantums = 1e8 is equivalent toa position size of one full coin.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

Asset

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/assets/asset/{id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/assets/asset/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/assets/asset/{id}

Queries a Asset by id.

Parameters

NameInTypeRequiredDescription
idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAssetResponse is response type for the Asset RPC method.

NameTypeRequiredRestrictionsDescription
» assetobjectfalsenoneAsset defines a single exchangable asset.
»» idinteger(int64)falsenoneUnique, sequentially-generated.
»» symbolstringfalsenoneThe human readable symbol of the Asset (e.g. USDC, ATOM).Must be uppercase, unique and correspond to the canonical symbol of thefull coin.
»» denomstringfalsenoneThe name of base denomination unit of the Asset (e.g. uatom,'ibc/xxxxx'). Must be unique and match the denom used in the sdk.Cointype in the x/bank module.
»» denom_exponentinteger(int32)falsenonenone
»» has_marketbooleanfalsenonetrue if this Asset has a valid MarketId value.
»» market_idinteger(int64)falsenoneThe Id of the Market associated with this Asset. It acts as theoracle price for the purposes of calculating collateraland margin requirements.
»» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (1 'quantum')to a full coin. For example, if atomic_resolution = -8then an asset_position with base_quantums = 1e8 is equivalent toa position size of one full coin.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

AllDowntimeInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/blocktime/all_downtime_info', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/blocktime/all_downtime_info',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/blocktime/all_downtime_info

Queries all recorded downtime info.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllDowntimeInfoResponse is a request type for the AllDowntimeInfo RPC method.

NameTypeRequiredRestrictionsDescription
» infoobjectfalsenoneAllDowntimeInfo stores information for all downtime durations.
»» infos[object]falsenoneThe downtime information for each tracked duration. Sorted by duration,ascending. (i.e. the same order as they appear in DowntimeParams).
»»» durationstringfalsenonenone
»»» block_infoobjectfalsenonenone
»»»» heightinteger(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DowntimeParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/blocktime/downtime_params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/blocktime/downtime_params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/blocktime/downtime_params

Queries the DowntimeParams.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDowntimeParamsResponse is a response type for the DowntimeParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneDowntimeParams defines the parameters for downtime.
»» durations[string]falsenoneDurations tracked for downtime. The durations must be sorted fromshortest to longest and must all be positive.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

AcknowledgedEventInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/bridge/acknowledged_event_info', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/bridge/acknowledged_event_info',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/bridge/acknowledged_event_info

Queries the AcknowledgedEventInfo. An "acknowledged" event is one that is in-consensus and has been stored in-state.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAcknowledgedEventInfoResponse is a response type for the AcknowledgedEventInfo RPC method.

NameTypeRequiredRestrictionsDescription
» infoobjectfalsenoneBridgeEventInfo stores information about the most recently processed bridgeevent.
»» next_idinteger(int64)falsenoneThe next event id (the last processed id plus one) of the logs from theEthereum contract.
»» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the most recently processed bridge event.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DelayedCompleteBridgeMessages

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/bridge/delayed_complete_bridge_messages', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/bridge/delayed_complete_bridge_messages',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/bridge/delayed_complete_bridge_messages

Queries all MsgCompleteBridge messages that are delayed (not yet executed) and corresponding block heights at which they will execute.

Parameters

NameInTypeRequiredDescription
addressquerystringfalsenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelayedCompleteBridgeMessagesResponse is a response type for the DelayedCompleteBridgeMessages RPC method.

NameTypeRequiredRestrictionsDescription
» messages[object]falsenonenone
»» messageobjectfalsenoneMsgCompleteBridge is the Msg/CompleteBridgeResponse request type.
»»» authoritystringfalsenonenone
»»» eventobjectfalsenoneThe event to complete.
»»»» idinteger(int64)falsenoneThe unique id of the Ethereum event log.
»»»» coinobjectfalsenoneThe tokens bridged.
»»»»» denomstringfalsenonenone
»»»»» amountstringfalsenonenone
»»»» addressstringfalsenoneThe account address or module address to bridge to.
»»»» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the event.
»» block_heightinteger(int64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

EventParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/bridge/event_params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/bridge/event_params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/bridge/event_params

Queries the EventParams.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryEventParamsResponse is a response type for the EventParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneEventParams stores parameters about which events to recognize and whichtokens to mint.
»» denomstringfalsenoneThe denom of the token to mint.
»» eth_chain_idstring(uint64)falsenoneThe numerical chain ID of the Ethereum chain to query.
»» eth_addressstringfalsenoneThe address of the Ethereum contract to monitor for logs.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ProposeParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/bridge/propose_params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/bridge/propose_params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/bridge/propose_params

Queries the ProposeParams.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryProposeParamsResponse is a response type for the ProposeParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneProposeParams stores parameters for proposing to the module.
»» max_bridges_per_blockinteger(int64)falsenoneThe maximum number of bridge events to propose per block.Limits the number of events to propose in a single blockin-order to smooth out the flow of events.
»» propose_delay_durationstringfalsenoneThe minimum duration to wait between a finalized bridge andproposing it. This allows other validators to have enough time toalso recognize its occurence. Therefore the bridge daemon shouldpool for new finalized events at least as often as this parameter.
»» skip_rate_ppminteger(int64)falsenoneDo not propose any events if a [0, 1_000_000) random number generatorgenerates a number smaller than this number.Setting this parameter to 1_000_000 means always skipping proposing events.
»» skip_if_block_delayed_by_durationstringfalsenoneDo not propose any events if the timestamp of the proposal block isbehind the proposers' wall-clock by at least this duration.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

RecognizedEventInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/bridge/recognized_event_info', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/bridge/recognized_event_info',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/bridge/recognized_event_info

Queries the RecognizedEventInfo. A "recognized" event is one that is finalized on the Ethereum blockchain and has been identified by the queried node. It is not yet in-consensus.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryRecognizedEventInfoResponse is a response type for the RecognizedEventInfo RPC method.

NameTypeRequiredRestrictionsDescription
» infoobjectfalsenoneBridgeEventInfo stores information about the most recently processed bridgeevent.
»» next_idinteger(int64)falsenoneThe next event id (the last processed id plus one) of the logs from theEthereum contract.
»» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the most recently processed bridge event.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SafetyParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/bridge/safety_params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/bridge/safety_params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/bridge/safety_params

Queries the SafetyParams.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QuerySafetyParamsResponse is a response type for the SafetyParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneSafetyParams stores safety parameters for the module.
»» is_disabledbooleanfalsenoneTrue if bridging is disabled.
»» delay_blocksinteger(int64)falsenoneThe number of blocks that bridges accepted in-consensus will be pendinguntil the minted tokens are granted.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

BlockRateLimitConfiguration

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/clob/block_rate', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/clob/block_rate',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/clob/block_rate

Queries BlockRateLimitConfiguration.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryBlockRateLimitConfigurationResponse is a response message that contains the BlockRateLimitConfiguration.

NameTypeRequiredRestrictionsDescription
» block_rate_limit_configobjectfalsenoneDefines the block rate limits for CLOB specific operations.
»» max_short_term_orders_per_n_blocks[object]falsenoneHow many short term order attempts (successful and failed) are allowed foran account per N blocks. Note that the rate limits are appliedin an AND fashion such that an order placement must pass all rate limitconfigurations.Specifying 0 values disables this rate limit.Deprecated in favor of max_short_term_orders_and_cancels_per_n_blocksfor v5.x onwards.
»»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
»» max_stateful_orders_per_n_blocks[object]falsenoneHow many stateful order attempts (successful and failed) are allowed foran account per N blocks. Note that the rate limits are appliedin an AND fashion such that an order placement must pass all rate limitconfigurations.Specifying 0 values disables this rate limit.
»»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
»» max_short_term_order_cancellations_per_n_blocks[object]falsenoneHow many short term order cancellation attempts (successful and failed) areallowed for an account per N blocks. Note that the rate limits areapplied in an AND fashion such that an order cancellation must pass allrate limit configurations.Specifying 0 values disables this rate limit.Deprecated in favor of max_short_term_orders_and_cancels_per_n_blocksfor v5.x onwards.
»»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
»» max_short_term_orders_and_cancels_per_n_blocks[object]falsenoneHow many short term order place and cancel attempts (successful and failed)are allowed for an account per N blocks. Note that the rate limits areapplied in an AND fashion such that an order placement must pass all ratelimit configurations.Specifying 0 values disables this rate limit.
»»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ClobPairAll

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/clob/clob_pair', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/clob/clob_pair',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/clob/clob_pair

Queries a list of ClobPair items.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryClobPairAllResponse is response type for the ClobPairAll method.

NameTypeRequiredRestrictionsDescription
» clob_pair[object]falsenonenone
»» idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
»» perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
»»» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
»» spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
»»» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
»»» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
»» step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
»» subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
»» quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
»» statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ClobPair

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/clob/clob_pair/{id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/clob/clob_pair/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/clob/clob_pair/{id}

Queries a ClobPair by id.

Parameters

NameInTypeRequiredDescription
idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryClobPairResponse is response type for the ClobPair method.

NameTypeRequiredRestrictionsDescription
» clob_pairobjectfalsenoneClobPair represents a single CLOB pair for a given productin state.
»» idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
»» perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
»»» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
»» spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
»»» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
»»» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
»» step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
»» subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
»» quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
»» statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

EquityTierLimitConfiguration

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/clob/equity_tier', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/clob/equity_tier',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/clob/equity_tier

Queries EquityTierLimitConfiguration.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryEquityTierLimitConfigurationResponse is a response message that contains the EquityTierLimitConfiguration.

NameTypeRequiredRestrictionsDescription
» equity_tier_limit_configobjectfalsenoneDefines the set of equity tiers to limit how many open ordersa subaccount is allowed to have.
»» short_term_order_equity_tiers[object]falsenoneHow many short term stateful orders are allowed per equity tier.Specifying 0 values disables this limit.
»»» usd_tnc_requiredstring(byte)falsenoneThe total net collateral in USDC quote quantums of equity required.
»»» limitinteger(int64)falsenoneWhat the limit is for usd_tnc_required.
»» stateful_order_equity_tiers[object]falsenoneHow many open stateful orders are allowed per equity tier.Specifying 0 values disables this limit.
»»» usd_tnc_requiredstring(byte)falsenoneThe total net collateral in USDC quote quantums of equity required.
»»» limitinteger(int64)falsenoneWhat the limit is for usd_tnc_required.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

LiquidationsConfiguration

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/clob/liquidations_config', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/clob/liquidations_config',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/clob/liquidations_config

Queries LiquidationsConfiguration.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryLiquidationsConfigurationResponse is a response message that contains the LiquidationsConfiguration.

NameTypeRequiredRestrictionsDescription
» liquidations_configobjectfalsenoneLiquidationsConfig stores all configurable fields related to liquidations.
»» max_liquidation_fee_ppminteger(int64)falsenoneThe maximum liquidation fee (in parts-per-million). This fee goes100% to the insurance fund.
»» position_block_limitsobjectfalsenoneLimits around how much of a single position can be liquidatedwithin a single block.
»»» min_position_notional_liquidatedstring(uint64)falsenoneThe minimum amount of quantums to liquidate for each message (inquote quantums).Overridden by the maximum size of the position.
»»» max_position_portion_liquidated_ppminteger(int64)falsenoneThe maximum portion of the position liquidated (in parts-per-million). Overridden by min_position_notional_liquidated.
»» subaccount_block_limitsobjectfalsenoneLimits around how many quote quantums from a single subaccount canbe liquidated within a single block.
»»» max_notional_liquidatedstring(uint64)falsenoneThe maximum notional amount that a single subaccount can haveliquidated (in quote quantums) per block.
»»» max_quantums_insurance_loststring(uint64)falsenoneThe maximum insurance-fund payout amount for a given subaccountper block. I.e. how much it can cover for that subaccount.
»» fillable_price_configobjectfalsenoneConfig about how the fillable-price spread from the oracle priceincreases based on the adjusted bankruptcy rating of the subaccount.
»»» bankruptcy_adjustment_ppminteger(int64)falsenoneThe rate at which the Adjusted Bankruptcy Rating increases.
»»» spread_to_maintenance_margin_ratio_ppminteger(int64)falsenoneThe maximum value that the liquidation spread can take, asa ratio against the position's maintenance margin.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

MevNodeToNodeCalculation

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/dydxprotocol/clob/mev_node_to_node_calculation', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "block_proposer_matches": {
    "matches": [
      {
        "taker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "taker_fee_ppm": 0,
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ],
    "liquidation_matches": [
      {
        "liquidated_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "insurance_fund_delta_quote_quantums": "string",
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ]
  },
  "validator_mev_metrics": {
    "validator_mev_matches": {
      "matches": [
        {
          "taker_order_subaccount_id": {},
          "taker_fee_ppm": 0,
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ],
      "liquidation_matches": [
        {
          "liquidated_subaccount_id": {},
          "insurance_fund_delta_quote_quantums": "string",
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ]
    },
    "clob_mid_prices": [
      {
        "clob_pair": {
          "id": 0,
          "perpetual_clob_metadata": {},
          "spot_clob_metadata": {},
          "step_base_quantums": "string",
          "subticks_per_tick": 0,
          "quantum_conversion_exponent": 0,
          "status": "["
        },
        "subticks": "string"
      }
    ],
    "bp_mev_matches": {
      "matches": [
        {
          "taker_order_subaccount_id": {},
          "taker_fee_ppm": 0,
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ],
      "liquidation_matches": [
        {
          "liquidated_subaccount_id": {},
          "insurance_fund_delta_quote_quantums": "string",
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ]
    },
    "proposal_receive_time": "string"
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/clob/mev_node_to_node_calculation',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /dydxprotocol/clob/mev_node_to_node_calculation

Runs the MEV node <> node calculation with the provided parameters.

Body parameter

{
  "block_proposer_matches": {
    "matches": [
      {
        "taker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "taker_fee_ppm": 0,
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ],
    "liquidation_matches": [
      {
        "liquidated_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "insurance_fund_delta_quote_quantums": "string",
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ]
  },
  "validator_mev_metrics": {
    "validator_mev_matches": {
      "matches": [
        {
          "taker_order_subaccount_id": {},
          "taker_fee_ppm": 0,
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ],
      "liquidation_matches": [
        {
          "liquidated_subaccount_id": {},
          "insurance_fund_delta_quote_quantums": "string",
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ]
    },
    "clob_mid_prices": [
      {
        "clob_pair": {
          "id": 0,
          "perpetual_clob_metadata": {},
          "spot_clob_metadata": {},
          "step_base_quantums": "string",
          "subticks_per_tick": 0,
          "quantum_conversion_exponent": 0,
          "status": "["
        },
        "subticks": "string"
      }
    ],
    "bp_mev_matches": {
      "matches": [
        {
          "taker_order_subaccount_id": {},
          "taker_fee_ppm": 0,
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ],
      "liquidation_matches": [
        {
          "liquidated_subaccount_id": {},
          "insurance_fund_delta_quote_quantums": "string",
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ]
    },
    "proposal_receive_time": "string"
  }
}

Parameters

NameInTypeRequiredDescription
bodybodyobjecttruenone
» block_proposer_matchesbodyobjectfalseRepresents the matches on the "block proposer". Note that this field
»» matchesbody[object]falsenone
»»» taker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»» taker_fee_ppmbodyinteger(int32)falsenone
»»» maker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»» maker_order_subticksbodystring(uint64)falsenone
»»» maker_order_is_buybodybooleanfalsenone
»»» maker_fee_ppmbodyinteger(int32)falsenone
»»» clob_pair_idbodyinteger(int64)falsenone
»»» fill_amountbodystring(uint64)falsenone
»» liquidation_matchesbody[object]falsenone
»»» liquidated_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»» insurance_fund_delta_quote_quantumsbodystring(int64)falsenone
»»» maker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»» maker_order_subticksbodystring(uint64)falsenone
»»» maker_order_is_buybodybooleanfalsenone
»»» maker_fee_ppmbodyinteger(int32)falsenone
»»» clob_pair_idbodyinteger(int64)falsenone
»»» fill_amountbodystring(uint64)falsenone
» validator_mev_metricsbodyobjectfalseRepresents the matches and mid-prices on the validator.
»» validator_mev_matchesbodyobjectfalseValidatorMevMatches contains all matches from the validator's local
»»» matchesbody[object]falsenone
»»»» taker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» taker_fee_ppmbodyinteger(int32)falsenone
»»»» maker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» maker_order_subticksbodystring(uint64)falsenone
»»»» maker_order_is_buybodybooleanfalsenone
»»»» maker_fee_ppmbodyinteger(int32)falsenone
»»»» clob_pair_idbodyinteger(int64)falsenone
»»»» fill_amountbodystring(uint64)falsenone
»»» liquidation_matchesbody[object]falsenone
»»»» liquidated_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» insurance_fund_delta_quote_quantumsbodystring(int64)falsenone
»»»» maker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» maker_order_subticksbodystring(uint64)falsenone
»»»» maker_order_is_buybodybooleanfalsenone
»»»» maker_fee_ppmbodyinteger(int32)falsenone
»»»» clob_pair_idbodyinteger(int64)falsenone
»»»» fill_amountbodystring(uint64)falsenone
»» clob_mid_pricesbody[object]falsenone
»»» clob_pairbodyobjectfalseClobPair represents a single CLOB pair for a given product
»»»» idbodyinteger(int64)falseID of the orderbook that stores all resting liquidity for this CLOB.
»»»» perpetual_clob_metadatabodyobjectfalsePerpetualClobMetadata contains metadata for a ClobPair
»»»»» perpetual_idbodyinteger(int64)falseId of the Perpetual the CLOB allows trading of.
»»»» spot_clob_metadatabodyobjectfalsePerpetualClobMetadata contains metadata for a ClobPair
»»»»» base_asset_idbodyinteger(int64)falseId of the base Asset in the trading pair.
»»»»» quote_asset_idbodyinteger(int64)falseId of the quote Asset in the trading pair.
»»»» step_base_quantumsbodystring(uint64)falseMinimum increment in the size of orders on the CLOB, in base quantums.
»»»» subticks_per_tickbodyinteger(int64)falseDefines the tick size of the orderbook by defining how many subticks
»»»» quantum_conversion_exponentbodyinteger(int32)false10^Exponent gives the number of QuoteQuantums traded per BaseQuantum
»»»» statusbodystringfalseStatus of the CLOB.
»»» subticksbodystring(uint64)falsenone
»» bp_mev_matchesbodyobjectfalseValidatorMevMatches contains all matches from the validator's local
»»» matchesbody[object]falsenone
»»»» taker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» taker_fee_ppmbodyinteger(int32)falsenone
»»»» maker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» maker_order_subticksbodystring(uint64)falsenone
»»»» maker_order_is_buybodybooleanfalsenone
»»»» maker_fee_ppmbodyinteger(int32)falsenone
»»»» clob_pair_idbodyinteger(int64)falsenone
»»»» fill_amountbodystring(uint64)falsenone
»»» liquidation_matchesbody[object]falsenone
»»»» liquidated_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» insurance_fund_delta_quote_quantumsbodystring(int64)falsenone
»»»» maker_order_subaccount_idbodyobjectfalseSubaccountId defines a unique identifier for a Subaccount.
»»»»» ownerbodystringfalseThe address of the wallet that owns this subaccount.
»»»»» numberbodyinteger(int64)falseThe unique number of this subaccount for the owner.
»»»» maker_order_subticksbodystring(uint64)falsenone
»»»» maker_order_is_buybodybooleanfalsenone
»»»» maker_fee_ppmbodyinteger(int32)falsenone
»»»» clob_pair_idbodyinteger(int64)falsenone
»»»» fill_amountbodystring(uint64)falsenone
»» proposal_receive_timebodystring(uint64)falsenone

Detailed descriptions

» block_proposer_matches: Represents the matches on the "block proposer". Note that this field does not need to be the actual block proposer's matches for a block, since the MEV calculation logic is run with this nodes matches as the "block proposer" matches.

»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»» validator_mev_matches: ValidatorMevMatches contains all matches from the validator's local operations queue.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»» clob_pair: ClobPair represents a single CLOB pair for a given product in state.

»»»» perpetual_clob_metadata: PerpetualClobMetadata contains metadata for a ClobPair representing a Perpetual product.

»»»» spot_clob_metadata: PerpetualClobMetadata contains metadata for a ClobPair representing a Spot product.

»»»» subticks_per_tick: Defines the tick size of the orderbook by defining how many subticks are in one tick. That is, the subticks of any valid order must be a multiple of this value. Generally this value should start >= 100to allow room for decreasing it.

»»»» quantum_conversion_exponent: 10^Exponent gives the number of QuoteQuantums traded per BaseQuantum per Subtick.

»»»» status: Status of the CLOB.

  • STATUS_UNSPECIFIED: Default value. This value is invalid and unused.
  • STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair.
  • STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized. TODO(DEC-600): update this documentation.
  • STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized. TODO(DEC-600): update this documentation.
  • STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized. TODO(DEC-600): update this documentation.
  • STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair. Clob pairs in this state only accept orders which are both short-term and post-only.
  • STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivated and trading has ceased. All open positions will be closed by the protocol. Open stateful orders will be cancelled. Open short-term orders will be left to expire.

»» bp_mev_matches: ValidatorMevMatches contains all matches from the validator's local operations queue.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

»»»»» number: The unique number of this subaccount for the owner. Currently limited to 128*1000 subaccounts per owner.

Enumerated Values

ParameterValue
»»»» statusSTATUS_UNSPECIFIED
»»»» statusSTATUS_ACTIVE
»»»» statusSTATUS_PAUSED
»»»» statusSTATUS_CANCEL_ONLY
»»»» statusSTATUS_POST_ONLY
»»»» statusSTATUS_INITIALIZING
»»»» statusSTATUS_FINAL_SETTLEMENT

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

MevNodeToNodeCalculationResponse is a response message that contains the MEV node <> node calculation result.

NameTypeRequiredRestrictionsDescription
» results[object]falsenonenone
»» clob_pair_idinteger(int64)falsenonenone
»» mevnumber(float)falsenonenone
»» volumestring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

BlockMessageIds

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/delaymsg/block/message_ids/{block_height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/delaymsg/block/message_ids/{block_height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/delaymsg/block/message_ids/{block_height}

Queries the DelayedMessages at a given block height.

Parameters

NameInTypeRequiredDescription
block_heightpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryGetBlockMessageIdsResponse is the response type for the BlockMessageIds RPC method.

NameTypeRequiredRestrictionsDescription
» message_ids[integer]falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Message

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/delaymsg/message/{id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/delaymsg/message/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/delaymsg/message/{id}

Queries the DelayedMessage by id.

Parameters

NameInTypeRequiredDescription
idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryGetMessageResponse is the response type for the Message RPC method.

NameTypeRequiredRestrictionsDescription
» messageobjectfalsenoneDelayedMessage is a message that is delayed until a certain block height.
»» idinteger(int64)falsenoneThe ID of the delayed message.
»» msgobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» block_heightinteger(int64)falsenoneThe block height at which the message should be executed.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

NextDelayedMessageId

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/delaymsg/next_id', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/delaymsg/next_id',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/delaymsg/next_id

Queries the next DelayedMessage's id.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryNextDelayedMessageIdResponse is the response type for the NextDelayedMessageId RPC method.

NameTypeRequiredRestrictionsDescription
» next_delayed_message_idinteger(int64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

EpochInfoAll

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/epochs/epoch_info', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/epochs/epoch_info',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/epochs/epoch_info

Queries a list of EpochInfo items.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryEpochInfoAllResponse is response type for the AllEpochInfo RPC method.

NameTypeRequiredRestrictionsDescription
» epoch_info[object]falsenonenone
»» namestringfalsenonename is the unique identifier.
»» next_tickinteger(int64)falsenonenext_tick indicates when the next epoch starts (in Unix Epoch seconds),if EpochInfo has been initialized.If EpochInfo is not initialized yet, next_tick indicates the earliestinitialization time (see is_initialized below).
»» durationinteger(int64)falsenoneduration of the epoch in seconds.
»» current_epochinteger(int64)falsenonecurrent epoch is the number of the current epoch.0 if next_tick has never been reached, positive otherwise.
»» current_epoch_start_blockinteger(int64)falsenonecurrent_epoch_start_block indicates the block height when the currentepoch started. 0 if current_epoch is 0.
»» is_initializedbooleanfalsenonenone
»» fast_forward_next_tickbooleanfalsenonefast_forward_next_tick specifies whether during initialization, next_tickshould be fast-forwarded to be greater than the current block time.If false, the original next_tick value isunchanged during initialization.If true, next_tick will be set to the smallest value x greater thanthe current block time such that (x - next_tick) % duration = 0.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

EpochInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/epochs/epoch_info/{name}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/epochs/epoch_info/{name}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/epochs/epoch_info/{name}

Queries a EpochInfo by name.

Parameters

NameInTypeRequiredDescription
namepathstringtruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryEpochInfoResponse is response type for the GetEpochInfo RPC method.

NameTypeRequiredRestrictionsDescription
» epoch_infoobjectfalsenoneEpochInfo stores metadata of an epoch timer.
»» namestringfalsenonename is the unique identifier.
»» next_tickinteger(int64)falsenonenext_tick indicates when the next epoch starts (in Unix Epoch seconds),if EpochInfo has been initialized.If EpochInfo is not initialized yet, next_tick indicates the earliestinitialization time (see is_initialized below).
»» durationinteger(int64)falsenoneduration of the epoch in seconds.
»» current_epochinteger(int64)falsenonecurrent epoch is the number of the current epoch.0 if next_tick has never been reached, positive otherwise.
»» current_epoch_start_blockinteger(int64)falsenonecurrent_epoch_start_block indicates the block height when the currentepoch started. 0 if current_epoch is 0.
»» is_initializedbooleanfalsenonenone
»» fast_forward_next_tickbooleanfalsenonefast_forward_next_tick specifies whether during initialization, next_tickshould be fast-forwarded to be greater than the current block time.If false, the original next_tick value isunchanged during initialization.If true, next_tick will be set to the smallest value x greater thanthe current block time such that (x - next_tick) % duration = 0.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

PerpetualFeeParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/feetiers/perpetual_fee_params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/feetiers/perpetual_fee_params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/feetiers/perpetual_fee_params

Queries the PerpetualFeeParams.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPerpetualFeeParamsResponse is a response type for the PerpetualFeeParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenonePerpetualFeeParams defines the parameters for perpetual fees.
»» tiers[object]falsenoneSorted fee tiers (lowest requirements first).
»»» A fee tier for perpetualsobjectfalsenonenone
»»»» namestringfalsenoneHuman-readable name of the tier, e.g. "Gold".
»»»» absolute_volume_requirementstring(uint64)falsenoneThe trader's absolute volume requirement in quote quantums.
»»»» total_volume_share_requirement_ppminteger(int64)falsenoneThe total volume share requirement.
»»»» maker_volume_share_requirement_ppminteger(int64)falsenoneThe maker volume share requirement.
»»»» maker_fee_ppminteger(int32)falsenoneThe maker fee once this tier is reached.
»»»» taker_fee_ppminteger(int32)falsenoneThe taker fee once this tier is reached.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

UserFeeTier

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/feetiers/user_fee_tier', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/feetiers/user_fee_tier',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/feetiers/user_fee_tier

Queries a user's fee tier

Parameters

NameInTypeRequiredDescription
userquerystringfalsenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUserFeeTierResponse is a request type for the UserFeeTier RPC method.

NameTypeRequiredRestrictionsDescription
» indexinteger(int64)falsenoneIndex of the fee tier in the list queried from PerpetualFeeParams.
» tierobjectfalsenonenone
»» namestringfalsenoneHuman-readable name of the tier, e.g. "Gold".
»» absolute_volume_requirementstring(uint64)falsenoneThe trader's absolute volume requirement in quote quantums.
»» total_volume_share_requirement_ppminteger(int64)falsenoneThe total volume share requirement.
»» maker_volume_share_requirement_ppminteger(int64)falsenoneThe maker volume share requirement.
»» maker_fee_ppminteger(int32)falsenoneThe maker fee once this tier is reached.
»» taker_fee_ppminteger(int32)falsenoneThe taker fee once this tier is reached.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

AllLiquidityTiers

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/perpetuals/liquidity_tiers', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/perpetuals/liquidity_tiers',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/perpetuals/liquidity_tiers

Queries a list of LiquidityTiers.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllLiquidityTiersResponse is response type for the AllLiquidityTiers RPC method.

NameTypeRequiredRestrictionsDescription
» liquidity_tiers[object]falsenonenone
»» idinteger(int64)falsenoneUnique id.
»» namestringfalsenoneThe name of the tier purely for mnemonic purposes, e.g. "Gold".
»» initial_margin_ppminteger(int64)falsenoneThe margin fraction needed to open a position.In parts-per-million.
»» maintenance_fraction_ppminteger(int64)falsenoneThe fraction of the initial-margin that the maintenance-margin is,e.g. 50%. In parts-per-million.
»» base_position_notionalstring(uint64)falsenoneThe maximum position size at which the margin requirements arenot increased over the default values. Above this position size,the margin requirements increase at a rate of sqrt(size).Deprecated since v3.x.
»» impact_notionalstring(uint64)falsenoneThe impact notional amount (in quote quantums) is used to determine impactbid/ask prices and its recommended value is 500 USDC / initial marginfraction.- Impact bid price = average execution price for a market sell of theimpact notional value.- Impact ask price = average execution price for a market buy of theimpact notional value.
»» open_interest_lower_capstring(uint64)falsenoneLower cap for Open Interest Margin Fracton (OIMF), in quote quantums.IMF is not affected when OI <= open_interest_lower_cap.
»» open_interest_upper_capstring(uint64)falsenoneUpper cap for Open Interest Margin Fracton (OIMF), in quote quantums.IMF scales linearly to 100% as OI approaches open_interest_upper_cap.If zero, then the IMF does not scale with OI.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

PerpetualParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/perpetuals/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/perpetuals/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/perpetuals/params

Queries the perpetual params.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is the response type for the Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneParams defines the parameters for x/perpetuals module.
»» funding_rate_clamp_factor_ppminteger(int64)falsenoneFunding rate clamp factor in parts-per-million, used for clamping 8-hourfunding rates according to equation:
»» premium_vote_clamp_factor_ppminteger(int64)falsenonePremium vote clamp factor in parts-per-million, used for clamping premiumvotes according to equation:
»» min_num_votes_per_sampleinteger(int64)falsenoneMinimum number of premium votes per premium sample. If number of premiumvotes is smaller than this number, pad with zeros up to this number.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

AllPerpetuals

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/perpetuals/perpetual', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/perpetuals/perpetual',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/perpetuals/perpetual

Queries a list of Perpetual items.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllPerpetualsResponse is response type for the AllPerpetuals RPC method.

NameTypeRequiredRestrictionsDescription
» perpetual[object]falsenonenone
»» paramsobjectfalsenonePerpetualParams is the parameters of the perpetual.
»»» idinteger(int64)falsenoneUnique, sequentially-generated.
»»» tickerstringfalsenoneThe name of the Perpetual (e.g. BTC-USD).
»»» market_idinteger(int64)falsenoneThe market associated with this Perpetual. Itacts as the oracle price for the purposes of calculatingcollateral, margin requirements, and funding rates.
»»» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (size = 1)to a full coin. For example, if AtomicResolution = -8then a PerpetualPosition with size = 1e8 is equivalent toa position size of one full coin.
»»» default_funding_ppminteger(int32)falsenoneThe default funding payment if there is no price premium. Inparts-per-million.
»»» liquidity_tierinteger(int64)falsenoneThe liquidity_tier that this perpetual is associated with.
»»» market_typestringfalsenone- PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type. - PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets. - PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.
»» funding_indexstring(byte)falsenoneThe current index determined by the cumulative all-timehistory of the funding mechanism. Starts at zero.
»» open_intereststring(byte)falsenoneTotal size of open long contracts, measured in base_quantums.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
market_typePERPETUAL_MARKET_TYPE_UNSPECIFIED
market_typePERPETUAL_MARKET_TYPE_CROSS
market_typePERPETUAL_MARKET_TYPE_ISOLATED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

Perpetual

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/perpetuals/perpetual/{id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/perpetuals/perpetual/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/perpetuals/perpetual/{id}

Queries a Perpetual by id.

Parameters

NameInTypeRequiredDescription
idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPerpetualResponse is response type for the Perpetual RPC method.

NameTypeRequiredRestrictionsDescription
» perpetualobjectfalsenonePerpetual represents a perpetual on the dYdX exchange.
»» paramsobjectfalsenonePerpetualParams is the parameters of the perpetual.
»»» idinteger(int64)falsenoneUnique, sequentially-generated.
»»» tickerstringfalsenoneThe name of the Perpetual (e.g. BTC-USD).
»»» market_idinteger(int64)falsenoneThe market associated with this Perpetual. Itacts as the oracle price for the purposes of calculatingcollateral, margin requirements, and funding rates.
»»» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (size = 1)to a full coin. For example, if AtomicResolution = -8then a PerpetualPosition with size = 1e8 is equivalent toa position size of one full coin.
»»» default_funding_ppminteger(int32)falsenoneThe default funding payment if there is no price premium. Inparts-per-million.
»»» liquidity_tierinteger(int64)falsenoneThe liquidity_tier that this perpetual is associated with.
»»» market_typestringfalsenone- PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type. - PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets. - PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.
»» funding_indexstring(byte)falsenoneThe current index determined by the cumulative all-timehistory of the funding mechanism. Starts at zero.
»» open_intereststring(byte)falsenoneTotal size of open long contracts, measured in base_quantums.

Enumerated Values

PropertyValue
market_typePERPETUAL_MARKET_TYPE_UNSPECIFIED
market_typePERPETUAL_MARKET_TYPE_CROSS
market_typePERPETUAL_MARKET_TYPE_ISOLATED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

PremiumSamples

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/perpetuals/premium_samples', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/perpetuals/premium_samples',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/perpetuals/premium_samples

Queries a list of premium samples.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPremiumSamplesResponse is the response type for the PremiumSamples RPC method.

NameTypeRequiredRestrictionsDescription
» premium_samplesobjectfalsenonePremiumStore is a struct to store a perpetual premiums for allperpetual markets. It stores a list of MarketPremiums, each of whichcorresponds to a perpetual market and stores a list of non-zero premiumvalues for that market.This struct can either be used to store PremiumVotes orPremiumSamples.
»» all_market_premiums[object]falsenoneall_market_premiums a list of MarketPremiums, each corresponding toa perpetual market.
»»» perpetual_idinteger(int64)falsenoneperpetual_id is the Id of the perpetual market.
»»» premiums[integer]falsenonepremiums is a list of premium values for a perpetual market. Since mostpremiums are zeros under "stable" market conditions, only non-zero valuesare stored in this list.
»» num_premiumsinteger(int64)falsenonenumber of rounds where premium values were added. This value indicatesthe total number of premiums (zeros and non-zeros) for eachMarketPremiums struct. Note that in the edge case a perpetual market wasadded in the middle of a epoch, we don't keep a seperate count for thatmarket. This means we treat this market as having zero premiums before itwas added.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

PremiumVotes

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/perpetuals/premium_votes', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/perpetuals/premium_votes',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/perpetuals/premium_votes

Queries a list of premium votes.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPremiumVotesResponse is the response type for the PremiumVotes RPC method.

NameTypeRequiredRestrictionsDescription
» premium_votesobjectfalsenonePremiumStore is a struct to store a perpetual premiums for allperpetual markets. It stores a list of MarketPremiums, each of whichcorresponds to a perpetual market and stores a list of non-zero premiumvalues for that market.This struct can either be used to store PremiumVotes orPremiumSamples.
»» all_market_premiums[object]falsenoneall_market_premiums a list of MarketPremiums, each corresponding toa perpetual market.
»»» perpetual_idinteger(int64)falsenoneperpetual_id is the Id of the perpetual market.
»»» premiums[integer]falsenonepremiums is a list of premium values for a perpetual market. Since mostpremiums are zeros under "stable" market conditions, only non-zero valuesare stored in this list.
»» num_premiumsinteger(int64)falsenonenumber of rounds where premium values were added. This value indicatesthe total number of premiums (zeros and non-zeros) for eachMarketPremiums struct. Note that in the edge case a perpetual market wasadded in the middle of a epoch, we don't keep a seperate count for thatmarket. This means we treat this market as having zero premiums before itwas added.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

AllMarketPrices

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/prices/market', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/prices/market',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/prices/market

Queries a list of MarketPrice items.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllMarketPricesResponse is response type for the Query/Params AllMarketPrices RPC method.

NameTypeRequiredRestrictionsDescription
» market_prices[object]falsenonenone
»» idinteger(int64)falsenoneUnique, sequentially-generated value that matches MarketParam.
»» exponentinteger(int32)falsenoneStatic value. The exponent of the price. See the comment on the duplicateMarketParam field for more information.
»» pricestring(uint64)falsenoneThe variable value that is updated by oracle price updates. 0 if it hasnever been updated, >0 otherwise.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

MarketPrice

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/prices/market/{id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/prices/market/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/prices/market/{id}

Queries a MarketPrice by id.

Parameters

NameInTypeRequiredDescription
idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryMarketPriceResponse is response type for the Query/Params MarketPrice RPC method.

NameTypeRequiredRestrictionsDescription
» market_priceobjectfalsenoneMarketPrice is used by the application to store/retrieve oracle price.
»» idinteger(int64)falsenoneUnique, sequentially-generated value that matches MarketParam.
»» exponentinteger(int32)falsenoneStatic value. The exponent of the price. See the comment on the duplicateMarketParam field for more information.
»» pricestring(uint64)falsenoneThe variable value that is updated by oracle price updates. 0 if it hasnever been updated, >0 otherwise.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

AllMarketParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/prices/params/market', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/prices/params/market',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/prices/params/market

Queries a list of MarketParam items.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllMarketParamsResponse is response type for the Query/Params AllMarketParams RPC method.

NameTypeRequiredRestrictionsDescription
» market_params[object]falsenonenone
»» idinteger(int64)falsenoneUnique, sequentially-generated value.
»» pairstringfalsenoneThe human-readable name of the market pair (e.g. BTC-USD).
»» exponentinteger(int32)falsenoneStatic value. The exponent of the price.For example if Exponent == -5 then a Value of 1,000,000,000represents ``$10,000. Therefore 10 ^ Exponent` represents the smallestprice step (in dollars) that can be recorded.
»» min_exchangesinteger(int64)falsenoneThe minimum number of exchanges that should be reporting a live price fora price update to be considered valid.
»» min_price_change_ppminteger(int64)falsenoneThe minimum allowable change in price value that would cause a priceupdate on the network. Measured as 1e-6 (parts per million).
»» exchange_config_jsonstringfalsenoneA string of json that encodes the configuration for resolving the priceof this market on various exchanges.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

MarketParam

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/prices/params/market/{id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/prices/params/market/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/prices/params/market/{id}

Queries a MarketParam by id.

Parameters

NameInTypeRequiredDescription
idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryMarketParamResponse is response type for the Query/Params MarketParams RPC method.

NameTypeRequiredRestrictionsDescription
» market_paramobjectfalsenoneMarketParam represents the x/prices configuration for markets, includingrepresenting price values, resolving markets on individual exchanges, andgenerating price updates. This configuration is specific to the quotecurrency.
»» idinteger(int64)falsenoneUnique, sequentially-generated value.
»» pairstringfalsenoneThe human-readable name of the market pair (e.g. BTC-USD).
»» exponentinteger(int32)falsenoneStatic value. The exponent of the price.For example if Exponent == -5 then a Value of 1,000,000,000represents ``$10,000. Therefore 10 ^ Exponent` represents the smallestprice step (in dollars) that can be recorded.
»» min_exchangesinteger(int64)falsenoneThe minimum number of exchanges that should be reporting a live price fora price update to be considered valid.
»» min_price_change_ppminteger(int64)falsenoneThe minimum allowable change in price value that would cause a priceupdate on the network. Measured as 1e-6 (parts per million).
»» exchange_config_jsonstringfalsenoneA string of json that encodes the configuration for resolving the priceof this market on various exchanges.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

RewardParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/rewards/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/rewards/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/rewards/params

Queries the Params.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is a response type for the Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneParams defines the parameters for x/rewards module.
»» treasury_accountstringfalsenoneThe module account to distribute rewards from.
»» denomstringfalsenoneThe denom of the rewards token.
»» denom_exponentinteger(int32)falsenoneThe exponent of converting one unit of denom to a full coin.For example, denom=uatom, denom_exponent=-6 defines that1 uatom = 10^(-6) ATOM. This conversion is needed since themarket_id retrieves the price of a full coin of the reward token.
»» market_idinteger(int64)falsenoneThe id of the market that has the price of the rewards token.
»» fee_multiplier_ppminteger(int64)falsenoneThe amount (in ppm) that fees are multiplied by to getthe maximum rewards amount.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

GlobalStats

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/stats/global_stats', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/stats/global_stats',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/stats/global_stats

Queries GlobalStats.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryGlobalStatsResponse is a response type for the GlobalStats RPC method.

NameTypeRequiredRestrictionsDescription
» statsobjectfalsenonenone
»» notional_tradedstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

StatParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/stats/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/stats/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/stats/params

Queries the Params.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is a response type for the Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneParams defines the parameters for x/stats module.
»» window_durationstringfalsenoneThe desired number of seconds in the look-back window.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

StatsMetadata

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/stats/stats_metadata', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/stats/stats_metadata',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/stats/stats_metadata

Queries StatsMetadata.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryStatsMetadataResponse is a response type for the StatsMetadata RPC method.

NameTypeRequiredRestrictionsDescription
» metadataobjectfalsenonenone
»» trailing_epochinteger(int64)falsenoneThe oldest epoch that is included in the stats. The next epoch to beremoved from the window.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

UserStats

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/stats/user_stats', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/stats/user_stats',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/stats/user_stats

Queries UserStats.

Parameters

NameInTypeRequiredDescription
userquerystringfalsenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUserStatsResponse is a request type for the UserStats RPC method.

NameTypeRequiredRestrictionsDescription
» statsobjectfalsenonenone
»» taker_notionalstring(uint64)falsenonenone
»» maker_notionalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

CollateralPoolAddress

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/subaccounts/collateral_pool_address/{perpetual_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/subaccounts/collateral_pool_address/{perpetual_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/subaccounts/collateral_pool_address/{perpetual_id}

Queries the collateral pool account address for a perpetual id.

Parameters

NameInTypeRequiredDescription
perpetual_idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryCollateralPoolAddressResponse is a response type for fetching the account address of the collateral pool associated with the passed in perpetual id.

NameTypeRequiredRestrictionsDescription
» collateral_pool_addressstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SubaccountAll

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/subaccounts/subaccount', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/subaccounts/subaccount',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/subaccounts/subaccount

Queries a list of Subaccount items.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QuerySubaccountAllResponse is response type for the Query RPC method.

NameTypeRequiredRestrictionsDescription
» subaccount[object]falsenonenone
»» idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» asset_positions[object]falsenoneAll AssetPositions associated with this subaccount.Always sorted ascending by asset_id.
»»» asset_idinteger(int64)falsenoneThe Id of the Asset.
»»» quantumsstring(byte)falsenoneThe absolute size of the position in base quantums.
»»» indexstring(uint64)falsenoneThe Index (either LongIndex or ShortIndex) of the Asset the lasttime this position was settledTODO(DEC-582): pending margin trading being added.
»» perpetual_positions[object]falsenoneAll PerpetualPositions associated with this subaccount.Always sorted ascending by `perpetual_id.
»»» perpetual_idinteger(int64)falsenoneThe Id of the Perpetual.
»»» quantumsstring(byte)falsenoneThe size of the position in base quantums.
»»» funding_indexstring(byte)falsenoneThe funding_index of the Perpetual the last time this position wassettled.
»» margin_enabledbooleanfalsenoneSet by the owner. If true, then margin trades can be made in thissubaccount.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

Subaccount

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/subaccounts/subaccount/{owner}/{number}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/subaccounts/subaccount/{owner}/{number}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/subaccounts/subaccount/{owner}/{number}

Queries a Subaccount by id

Parameters

NameInTypeRequiredDescription
ownerpathstringtruenone
numberpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QuerySubaccountResponse is response type for the Query RPC method.

NameTypeRequiredRestrictionsDescription
» subaccountobjectfalsenoneSubaccount defines a single sub-account for a given address.Subaccounts are uniquely indexed by a subaccountNumber/owner pair.
»» idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» asset_positions[object]falsenoneAll AssetPositions associated with this subaccount.Always sorted ascending by asset_id.
»»» asset_idinteger(int64)falsenoneThe Id of the Asset.
»»» quantumsstring(byte)falsenoneThe absolute size of the position in base quantums.
»»» indexstring(uint64)falsenoneThe Index (either LongIndex or ShortIndex) of the Asset the lasttime this position was settledTODO(DEC-582): pending margin trading being added.
»» perpetual_positions[object]falsenoneAll PerpetualPositions associated with this subaccount.Always sorted ascending by `perpetual_id.
»»» perpetual_idinteger(int64)falsenoneThe Id of the Perpetual.
»»» quantumsstring(byte)falsenoneThe size of the position in base quantums.
»»» funding_indexstring(byte)falsenoneThe funding_index of the Perpetual the last time this position wassettled.
»» margin_enabledbooleanfalsenoneSet by the owner. If true, then margin trades can be made in thissubaccount.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

GetWithdrawalAndTransfersBlockedInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/subaccounts/withdrawals_and_transfers_blocked_info/{perpetual_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/subaccounts/withdrawals_and_transfers_blocked_info/{perpetual_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/subaccounts/withdrawals_and_transfers_blocked_info/{perpetual_id}

Queries information about whether withdrawal and transfers are blocked, and if so which block they are re-enabled on.

Parameters

NameInTypeRequiredDescription
perpetual_idpathinteger(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryGetWithdrawalAndTransfersBlockedInfoRequest is a response type for fetching information about whether withdrawals and transfers are blocked.

NameTypeRequiredRestrictionsDescription
» negative_tnc_subaccount_seen_at_blockinteger(int64)falsenonenone
» chain_outage_seen_at_blockinteger(int64)falsenonenone
» withdrawals_and_transfers_unblocked_at_blockinteger(int64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

VestEntry

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/dydxprotocol/v4/vest/vest_entry', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/dydxprotocol/v4/vest/vest_entry',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /dydxprotocol/v4/vest/vest_entry

Queries the VestEntry.

Parameters

NameInTypeRequiredDescription
vester_accountquerystringfalsenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryVestEntryResponse is a response type for the VestEntry RPC method.

NameTypeRequiredRestrictionsDescription
» entryobjectfalsenoneVestEntry specifies a Vester Account and the rate at which tokens aredripped into the corresponding Treasury Account.
»» vester_accountstringfalsenoneThe module account to vest tokens from.This is also the key to this VestEntry in state.
»» treasury_accountstringfalsenoneThe module account to vest tokens to.
»» denomstringfalsenoneThe denom of the token to vest.
»» start_timestring(date-time)falsenoneThe start time of vest. Before this time, no vest will occur.
»» end_timestring(date-time)falsenoneThe end time of vest. At this target date, all funds should be in theTreasury Account and none left in the Vester Account.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

EscrowAddress

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/apps/transfer/v1/channels/{channel_id}/ports/{port_id}/escrow_address', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/apps/transfer/v1/channels/{channel_id}/ports/{port_id}/escrow_address',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/apps/transfer/v1/channels/{channel_id}/ports/{port_id}/escrow_address

EscrowAddress returns the escrow address for a particular port and channel id.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtrueunique channel identifier
port_idpathstringtrueunique port identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryEscrowAddressResponse is the response type of the EscrowAddress RPC method.

NameTypeRequiredRestrictionsDescription
» escrow_addressstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DenomHash

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/apps/transfer/v1/denom_hashes/{trace}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/apps/transfer/v1/denom_hashes/{trace}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/apps/transfer/v1/denom_hashes/{trace}

DenomHash queries a denomination hash information.

Parameters

NameInTypeRequiredDescription
tracepathstringtrueThe denomination trace ([port_id]/[channel_id])+/[denom]

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDenomHashResponse is the response type for the Query/DenomHash RPC method.

NameTypeRequiredRestrictionsDescription
» hashstringfalsenonehash (in hex format) of the denomination trace information.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DenomTraces

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/apps/transfer/v1/denom_traces', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/apps/transfer/v1/denom_traces',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/apps/transfer/v1/denom_traces

DenomTraces queries all denomination traces.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConnectionsResponse is the response type for the Query/DenomTraces RPC method.

NameTypeRequiredRestrictionsDescription
» denom_traces[object]falsenonedenom_traces returns all denominations trace information.
»» pathstringfalsenonepath defines the chain of port/channel identifiers used for tracing thesource of the fungible token.
»» base_denomstringfalsenonebase denomination of the relayed fungible token.
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DenomTrace

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/apps/transfer/v1/denom_traces/{hash}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/apps/transfer/v1/denom_traces/{hash}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/apps/transfer/v1/denom_traces/{hash}

DenomTrace queries a denomination trace information.

Parameters

NameInTypeRequiredDescription
hashpathstringtruehash (in hex format) or denom (full denom with ibc prefix) of the denomination trace information.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDenomTraceResponse is the response type for the Query/DenomTrace RPC method.

NameTypeRequiredRestrictionsDescription
» denom_traceobjectfalsenoneDenomTrace contains the base denomination for ICS20 fungible tokens and thesource tracing information path.
»» pathstringfalsenonepath defines the chain of port/channel identifiers used for tracing thesource of the fungible token.
»» base_denomstringfalsenonebase denomination of the relayed fungible token.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

TotalEscrowForDenom

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/apps/transfer/v1/denoms/{denom}/total_escrow', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/apps/transfer/v1/denoms/{denom}/total_escrow',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/apps/transfer/v1/denoms/{denom}/total_escrow

TotalEscrowForDenom returns the total amount of tokens in escrow based on the denom.

Parameters

NameInTypeRequiredDescription
denompathstringtruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryTotalEscrowForDenomResponse is the response type for TotalEscrowForDenom RPC method.

NameTypeRequiredRestrictionsDescription
» amountobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

IbcTransferParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/apps/transfer/v1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/apps/transfer/v1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/apps/transfer/v1/params

Params queries all parameters of the ibc-transfer module.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is the response type for the Query/Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams defines the parameters of the module.
»» send_enabledbooleanfalsenonesend_enabled enables or disables all cross-chain token transfers from thischain.
»» receive_enabledbooleanfalsenonereceive_enabled enables or disables all cross-chain token transfers to thischain.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ClientStates

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/client_states', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/client_states',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/client_states

ClientStates queries all the IBC light clients of a chain.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryClientStatesResponse is the response type for the Query/ClientStates RPC method.

NameTypeRequiredRestrictionsDescription
» client_states[object]falsenonelist of stored ClientStates of the chain.
»» client_idstringfalsenonenone
»» client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ClientState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/client_states/{client_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/client_states/{client_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/client_states/{client_id}

ClientState queries an IBC light client.

Parameters

NameInTypeRequiredDescription
client_idpathstringtrueclient state unique identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryClientStateResponse is the response type for the Query/ClientState RPC method. Besides the client state, it includes a proof and the height from which the proof was retrieved.

NameTypeRequiredRestrictionsDescription
» client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ClientStatus

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/client_status/{client_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/client_status/{client_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/client_status/{client_id}

Status queries the status of an IBC client.

Parameters

NameInTypeRequiredDescription
client_idpathstringtrueclient unique identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryClientStatusResponse is the response type for the Query/ClientStatus RPC method. It returns the current status of the IBC client.

NameTypeRequiredRestrictionsDescription
» statusstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ConsensusStates

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/consensus_states/{client_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/consensus_states/{client_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/consensus_states/{client_id}

ConsensusStates queries all the consensus state associated with a given client.

Parameters

NameInTypeRequiredDescription
client_idpathstringtrueclient identifier
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConsensusStatesResponse is the response type for the Query/ConsensusStates RPC method

NameTypeRequiredRestrictionsDescription
» consensus_states[object]falsenonenone
»» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»»» revision_numberstring(uint64)falsenonenone
»»» revision_heightstring(uint64)falsenonenone
»» consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ConsensusStateHeights

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/consensus_states/{client_id}/heights', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/consensus_states/{client_id}/heights',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/consensus_states/{client_id}/heights

ConsensusStateHeights queries the height of every consensus states associated with a given client.

Parameters

NameInTypeRequiredDescription
client_idpathstringtrueclient identifier
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConsensusStateHeightsResponse is the response type for the Query/ConsensusStateHeights RPC method

NameTypeRequiredRestrictionsDescription
» consensus_state_heights[object]falsenonenone
»» Height is a monotonically increasing data type
that can be compared against another Height for the purposes of updating and
freezing clientsobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»»» revision_numberstring(uint64)falsenonenone
»»» revision_heightstring(uint64)falsenonenone
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ConsensusState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/consensus_states/{client_id}/revision/{revision_number}/height/{revision_height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/consensus_states/{client_id}/revision/{revision_number}/height/{revision_height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/consensus_states/{client_id}/revision/{revision_number}/height/{revision_height}

ConsensusState queries a consensus state associated with a client state at a given height.

Parameters

NameInTypeRequiredDescription
client_idpathstringtrueclient identifier
revision_numberpathstring(uint64)trueconsensus state revision number
revision_heightpathstring(uint64)trueconsensus state revision height
latest_heightquerybooleanfalselatest_height overrides the height field and queries the latest stored

Detailed descriptions

latest_height: latest_height overrides the height field and queries the latest stored ConsensusState.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConsensusStateResponse is the response type for the Query/ConsensusState RPC method

NameTypeRequiredRestrictionsDescription
» consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

IbcClientParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/params

ClientParams queries all parameters of the ibc client submodule.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryClientParamsResponse is the response type for the Query/ClientParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams defines the parameters of the module.
»» allowed_clients[string]falsenoneallowed_clients defines the list of allowed client state types which can be createdand interacted with. If a client type is removed from the allowed clients list, usageof this client will be disabled until it is added again to the list.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

UpgradedClientState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/upgraded_client_states', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/upgraded_client_states',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/upgraded_client_states

UpgradedClientState queries an Upgraded IBC light client.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUpgradedClientStateResponse is the response type for the Query/UpgradedClientState RPC method.

NameTypeRequiredRestrictionsDescription
» upgraded_client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

IbcUpgradedConsensusState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/client/v1/upgraded_consensus_states', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/upgraded_consensus_states',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/client/v1/upgraded_consensus_states

UpgradedConsensusState queries an Upgraded IBC consensus state.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUpgradedConsensusStateResponse is the response type for the Query/UpgradedConsensusState RPC method.

NameTypeRequiredRestrictionsDescription
» upgraded_consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

VerifyMembership

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/ibc/core/client/v1/verify_membership', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "client_id": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  },
  "merkle_path": {
    "key_path": [
      "string"
    ]
  },
  "value": "string",
  "time_delay": "string",
  "block_delay": "string"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/ibc/core/client/v1/verify_membership',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /ibc/core/client/v1/verify_membership

VerifyMembership queries an IBC light client for proof verification of a value at a given key path.

Body parameter

{
  "client_id": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  },
  "merkle_path": {
    "key_path": [
      "string"
    ]
  },
  "value": "string",
  "time_delay": "string",
  "block_delay": "string"
}

Parameters

NameInTypeRequiredDescription
bodybodyobjecttruenone
» client_idbodystringfalseclient unique identifier.
» proofbodystring(byte)falsethe proof to be verified by the client.
» proof_heightbodyobjectfalseNormally the RevisionHeight is incremented at each height while keeping
»» revision_numberbodystring(uint64)falsenone
»» revision_heightbodystring(uint64)falsenone
» merkle_pathbodyobjectfalsethe commitment key path.
»» key_pathbody[string]falsenone
» valuebodystring(byte)falsethe value which is proven.
» time_delaybodystring(uint64)falsenone
» block_delaybodystring(uint64)falsenone

Detailed descriptions

» proof_height: Normally the RevisionHeight is incremented at each height while keeping RevisionNumber the same. However some consensus algorithms may choose to reset the height in certain conditions e.g. hard forks, state-machine breaking changes In these cases, the RevisionNumber is incremented so that height continues to be monitonically increasing even as the RevisionHeight gets reset

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryVerifyMembershipResponse is the response type for the Query/VerifyMembership RPC method

NameTypeRequiredRestrictionsDescription
» successbooleanfalsenoneboolean indicating success or failure of proof verification.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ClientConnections

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/connection/v1/client_connections/{client_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/connection/v1/client_connections/{client_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/connection/v1/client_connections/{client_id}

ClientConnections queries the connection paths associated with a client state.

Parameters

NameInTypeRequiredDescription
client_idpathstringtrueclient identifier associated with a connection

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryClientConnectionsResponse is the response type for the Query/ClientConnections RPC method

NameTypeRequiredRestrictionsDescription
» connection_paths[string]falsenoneslice of all the connection paths associated with a client.
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Connections

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/connection/v1/connections', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/connection/v1/connections',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/connection/v1/connections

Connections queries all the IBC connections of a chain.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConnectionsResponse is the response type for the Query/Connections RPC method.

NameTypeRequiredRestrictionsDescription
» connections[object]falsenonelist of stored connections of the chain.
»» idstringfalsenoneconnection identifier.
»» client_idstringfalsenoneclient associated with this connection.
»» versions[object]falsenonenone
»»» identifierstringfalsenonenone
»»» features[string]falsenonenone
»» statestringfalsenonecurrent state of the connection end.
»» counterpartyobjectfalsenonecounterparty chain associated with this connection.
»»» client_idstringfalsenoneidentifies the client on the counterparty chain associated with a givenconnection.
»»» connection_idstringfalsenoneidentifies the connection end on the counterparty chain associated with agiven connection.
»»» prefixobjectfalsenonecommitment merkle prefix of the counterparty chain.
»»»» key_prefixstring(byte)falsenonenone
»» delay_periodstring(uint64)falsenonedelay period associated with this connection.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Connection

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/connection/v1/connections/{connection_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/connection/v1/connections/{connection_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/connection/v1/connections/{connection_id}

Connection queries an IBC connection end.

Parameters

NameInTypeRequiredDescription
connection_idpathstringtrueconnection unique identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConnectionResponse is the response type for the Query/Connection RPC method. Besides the connection end, it includes a proof and the height from which the proof was retrieved.

NameTypeRequiredRestrictionsDescription
» connectionobjectfalsenoneConnectionEnd defines a stateful object on a chain connected to anotherseparate one.NOTE: there must only be 2 defined ConnectionEnds to establisha connection between two chains.
»» client_idstringfalsenoneclient associated with this connection.
»» versions[object]falsenoneIBC version which can be utilised to determine encodings or protocols forchannels or packets utilising this connection.
»»» identifierstringfalsenonenone
»»» features[string]falsenonenone
»» statestringfalsenonecurrent state of the connection end.
»» counterpartyobjectfalsenonecounterparty chain associated with this connection.
»»» client_idstringfalsenoneidentifies the client on the counterparty chain associated with a givenconnection.
»»» connection_idstringfalsenoneidentifies the connection end on the counterparty chain associated with agiven connection.
»»» prefixobjectfalsenonecommitment merkle prefix of the counterparty chain.
»»»» key_prefixstring(byte)falsenonenone
»» delay_periodstring(uint64)falsenonedelay period that must pass before a consensus state can be used forpacket-verification NOTE: delay period logic is only implemented by someclients.
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ConnectionClientState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/connection/v1/connections/{connection_id}/client_state', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/connection/v1/connections/{connection_id}/client_state',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/connection/v1/connections/{connection_id}/client_state

ConnectionClientState queries the client state associated with the connection.

Parameters

NameInTypeRequiredDescription
connection_idpathstringtrueconnection identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConnectionClientStateResponse is the response type for the Query/ConnectionClientState RPC method

NameTypeRequiredRestrictionsDescription
» identified_client_stateobjectfalsenoneIdentifiedClientState defines a client state with an additional clientidentifier field.
»» client_idstringfalsenonenone
»» client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ConnectionConsensusState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/connection/v1/connections/{connection_id}/consensus_state/revision/{revision_number}/height/{revision_height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/connection/v1/connections/{connection_id}/consensus_state/revision/{revision_number}/height/{revision_height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/connection/v1/connections/{connection_id}/consensus_state/revision/{revision_number}/height/{revision_height}

ConnectionConsensusState queries the consensus state associated with the connection.

Parameters

NameInTypeRequiredDescription
connection_idpathstringtrueconnection identifier
revision_numberpathstring(uint64)truenone
revision_heightpathstring(uint64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConnectionConsensusStateResponse is the response type for the Query/ConnectionConsensusState RPC method

NameTypeRequiredRestrictionsDescription
» consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» client_idstringfalsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

IbcConnectionParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/connection/v1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/connection/v1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/connection/v1/params

ConnectionParams queries all parameters of the ibc connection submodule.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConnectionParamsResponse is the response type for the Query/ConnectionParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams defines the parameters of the module.
»» max_expected_time_per_blockstring(uint64)falsenonemaximum expected time per block (in nanoseconds), used to enforce block delay. This parameter should reflect thelargest amount of time that the chain might reasonably take to produce the next block under normal operatingconditions. A safe choice is 3-5x the expected time per block.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Channels

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels

Channels queries all the IBC channels of a chain.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryChannelsResponse is the response type for the Query/Channels RPC method.

NameTypeRequiredRestrictionsDescription
» channels[object]falsenonelist of stored channels of the chain.
»» statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
»» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
»» counterpartyobjectfalsenonenone
»»» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
»»» channel_idstringfalsenonenone
»» connection_hops[string]falsenonenone
»» versionstringfalsenonenone
»» port_idstringfalsenonenone
»» channel_idstringfalsenonenone
»» upgrade_sequencestring(uint64)falsenonenone
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Channel

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}

Channel queries an IBC Channel.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryChannelResponse is the response type for the Query/Channel RPC method. Besides the Channel end, it includes a proof and the height from which the proof was retrieved.

NameTypeRequiredRestrictionsDescription
» channelobjectfalsenoneChannel defines pipeline for exactly-once packet delivery between specificmodules on separate blockchains, which has at least one end capable ofsending packets and one end capable of receiving packets.
»» statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
»» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
»» counterpartyobjectfalsenonenone
»»» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
»»» channel_idstringfalsenonenone
»» connection_hops[string]falsenonenone
»» versionstringfalsenonenone
»» upgrade_sequencestring(uint64)falsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ChannelClientState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/client_state', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/client_state',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/client_state

ChannelClientState queries for the client state for the channel associated with the provided channel identifiers.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryChannelClientStateResponse is the Response type for the Query/QueryChannelClientState RPC method

NameTypeRequiredRestrictionsDescription
» identified_client_stateobjectfalsenoneIdentifiedClientState defines a client state with an additional clientidentifier field.
»» client_idstringfalsenonenone
»» client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ChannelConsensusState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/consensus_state/revision/{revision_number}/height/{revision_height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/consensus_state/revision/{revision_number}/height/{revision_height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/consensus_state/revision/{revision_number}/height/{revision_height}

ChannelConsensusState queries for the consensus state for the channel associated with the provided channel identifiers.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
revision_numberpathstring(uint64)truerevision number of the consensus state
revision_heightpathstring(uint64)truerevision height of the consensus state

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryChannelClientStateResponse is the Response type for the Query/QueryChannelClientState RPC method

NameTypeRequiredRestrictionsDescription
» consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» client_idstringfalsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

NextSequenceReceive

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence

NextSequenceReceive returns the next receive sequence for a given channel.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QuerySequenceResponse is the response type for the Query/QueryNextSequenceReceiveResponse RPC method

NameTypeRequiredRestrictionsDescription
» next_sequence_receivestring(uint64)falsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

NextSequenceSend

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence_send', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence_send',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence_send

NextSequenceSend returns the next send sequence for a given channel.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryNextSequenceSendResponse is the request type for the Query/QueryNextSequenceSend RPC method

NameTypeRequiredRestrictionsDescription
» next_sequence_sendstring(uint64)falsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

PacketAcknowledgements

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements

PacketAcknowledgements returns all the packet acknowledgements associated with a channel.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.
packet_commitment_sequencesqueryarray[string]falselist of packet sequences.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPacketAcknowledgemetsResponse is the request type for the Query/QueryPacketAcknowledgements RPC method

NameTypeRequiredRestrictionsDescription
» acknowledgements[object]falsenonenone
»» port_idstringfalsenonechannel port identifier.
»» channel_idstringfalsenonechannel unique identifier.
»» sequencestring(uint64)falsenonepacket sequence.
»» datastring(byte)falsenoneembedded data that represents packet state.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

PacketAcknowledgement

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}

PacketAcknowledgement queries a stored packet acknowledgement hash.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
sequencepathstring(uint64)truepacket sequence

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPacketAcknowledgementResponse defines the client query response for a packet which also includes a proof and the height from which the proof was retrieved

NameTypeRequiredRestrictionsDescription
» acknowledgementstring(byte)falsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

PacketCommitments

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments

PacketCommitments returns all the packet commitments hashes associated with a channel.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPacketCommitmentsResponse is the request type for the Query/QueryPacketCommitments RPC method

NameTypeRequiredRestrictionsDescription
» commitments[object]falsenonenone
»» port_idstringfalsenonechannel port identifier.
»» channel_idstringfalsenonechannel unique identifier.
»» sequencestring(uint64)falsenonepacket sequence.
»» datastring(byte)falsenoneembedded data that represents packet state.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

UnreceivedAcks

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_ack_sequences}/unreceived_acks', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_ack_sequences}/unreceived_acks',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_ack_sequences}/unreceived_acks

UnreceivedAcks returns all the unreceived IBC acknowledgements associated with a channel and sequences.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
packet_ack_sequencespatharray[string]truelist of acknowledgement sequences

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUnreceivedAcksResponse is the response type for the Query/UnreceivedAcks RPC method

NameTypeRequiredRestrictionsDescription
» sequences[string]falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

UnreceivedPackets

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_commitment_sequences}/unreceived_packets', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_commitment_sequences}/unreceived_packets',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_commitment_sequences}/unreceived_packets

UnreceivedPackets returns all the unreceived IBC packets associated with a channel and sequences.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
packet_commitment_sequencespatharray[string]truelist of packet sequences

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUnreceivedPacketsResponse is the response type for the Query/UnreceivedPacketCommitments RPC method

NameTypeRequiredRestrictionsDescription
» sequences[string]falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

PacketCommitment

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}

PacketCommitment queries a stored packet commitment hash.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
sequencepathstring(uint64)truepacket sequence

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPacketCommitmentResponse defines the client query response for a packet which also includes a proof and the height from which the proof was retrieved

NameTypeRequiredRestrictionsDescription
» commitmentstring(byte)falsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

PacketReceipt

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_receipts/{sequence}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_receipts/{sequence}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_receipts/{sequence}

PacketReceipt queries if a given packet sequence has been received on the queried chain

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruechannel unique identifier
port_idpathstringtrueport unique identifier
sequencepathstring(uint64)truepacket sequence

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPacketReceiptResponse defines the client query response for a packet receipt which also includes a proof, and the height from which the proof was retrieved

NameTypeRequiredRestrictionsDescription
» receivedbooleanfalsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Upgrade

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/upgrade', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/upgrade',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/upgrade

Upgrade returns the upgrade for a given port and channel id.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruenone
port_idpathstringtruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUpgradeResponse is the response type for the QueryUpgradeResponse RPC method

NameTypeRequiredRestrictionsDescription
» upgradeobjectfalsenoneUpgrade is a verifiable type which contains the relevant informationfor an attempted upgrade. It provides the proposed changes to the channelend, the timeout for this upgrade attempt and the next packet sequencewhich allows the counterparty to efficiently know the highest sequence it has received.The next sequence send is used for pruning and upgrading from unordered to ordered channels.
»» fieldsobjectfalsenoneUpgradeFields are the fields in a channel end which may be changedduring a channel upgrade.
»»» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
»»» connection_hops[string]falsenonenone
»»» versionstringfalsenonenone
»» timeoutobjectfalsenoneTimeout defines an execution deadline structure for 04-channel handlers.This includes packet lifecycle handlers as well as the upgrade handshake handlers.A valid Timeout contains either one or both of a timestamp and block height (sequence).
»»» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»»»» revision_numberstring(uint64)falsenonenone
»»»» revision_heightstring(uint64)falsenonenone
»»» timestampstring(uint64)falsenonenone
»» next_sequence_sendstring(uint64)falsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

UpgradeError

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/upgrade_error', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/upgrade_error',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/upgrade_error

UpgradeError returns the error receipt if the upgrade handshake failed.

Parameters

NameInTypeRequiredDescription
channel_idpathstringtruenone
port_idpathstringtruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUpgradeErrorResponse is the response type for the Query/QueryUpgradeError RPC method

NameTypeRequiredRestrictionsDescription
» error_receiptobjectfalsenoneErrorReceipt defines a type which encapsulates the upgrade sequence and error associated with theupgrade handshake failure. When a channel upgrade handshake is aborted both chains are expected to increment to thenext sequence.
»» sequencestring(uint64)falsenonenone
»» messagestringfalsenonenone
» proofstring(byte)falsenonenone
» proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ConnectionChannels

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/connections/{connection}/channels', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/connections/{connection}/channels',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/connections/{connection}/channels

ConnectionChannels queries all the channels associated with a connection end.

Parameters

NameInTypeRequiredDescription
connectionpathstringtrueconnection unique identifier
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryConnectionChannelsResponse is the Response type for the Query/QueryConnectionChannels RPC method

NameTypeRequiredRestrictionsDescription
» channels[object]falsenonelist of channels associated with a connection.
»» statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
»» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
»» counterpartyobjectfalsenonenone
»»» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
»»» channel_idstringfalsenonenone
»» connection_hops[string]falsenonenone
»» versionstringfalsenonenone
»» port_idstringfalsenonenone
»» channel_idstringfalsenonenone
»» upgrade_sequencestring(uint64)falsenonenone
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ChannelParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/ibc/core/channel/v1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/ibc/core/channel/v1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /ibc/core/channel/v1/params

ChannelParams queries all parameters of the ibc channel submodule.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryChannelParamsResponse is the response type for the Query/ChannelParams RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams defines the parameters of the module.
»» upgrade_timeoutobjectfalsenoneTimeout defines an execution deadline structure for 04-channel handlers.This includes packet lifecycle handlers as well as the upgrade handshake handlers.A valid Timeout contains either one or both of a timestamp and block height (sequence).
»»» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»»»» revision_numberstring(uint64)falsenonenone
»»»» revision_heightstring(uint64)falsenonenone
»»» timestampstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AccountInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/account_info/{address}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/account_info/{address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/account_info/{address}

AccountInfo queries account info which is common to all account types.

Since: cosmos-sdk 0.47

Parameters

NameInTypeRequiredDescription
addresspathstringtrueaddress is the account address string.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QueryAccountInfoResponse is the Query/AccountInfo response type.

Since: cosmos-sdk 0.47*

NameTypeRequiredRestrictionsDescription
» infoobjectfalsenoneinfo is the account info which is represented by BaseAccount.
»» addressstringfalsenonenone
»» pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» account_numberstring(uint64)falsenonenone
»» sequencestring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Accounts

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/accounts', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/accounts',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/accounts

Accounts returns all the existing accounts.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Since: cosmos-sdk 0.43

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QueryAccountsResponse is the response type for the Query/Accounts RPC method.

Since: cosmos-sdk 0.43*

NameTypeRequiredRestrictionsDescription
» accounts[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Account

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/accounts/{address}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/accounts/{address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/accounts/{address}

Account returns account details based on address.

Parameters

NameInTypeRequiredDescription
addresspathstringtrueaddress defines the address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAccountResponse is the response type for the Query/Account RPC method.

NameTypeRequiredRestrictionsDescription
» accountobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AccountAddressByID

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/address_by_id/{id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/address_by_id/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/address_by_id/{id}

AccountAddressByID returns account address based on account number.

Since: cosmos-sdk 0.46.2

Parameters

NameInTypeRequiredDescription
idpathstring(int64)trueDeprecated, use account_id instead
account_idquerystring(uint64)falseaccount_id is the account number of the address to be queried.

Detailed descriptions

id: Deprecated, use account_id instead

id is the account number of the address to be queried. This field should have been an uint64 (like all account numbers), and will be updated to uint64 in a future version of the auth query.

account_id: account_id is the account number of the address to be queried.

Since: cosmos-sdk 0.47

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAccountAddressByIDResponse is the response type for AccountAddressByID rpc method

NameTypeRequiredRestrictionsDescription
» account_addressstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Bech32Prefix

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/bech32', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/bech32',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/bech32

Bech32Prefix queries bech32Prefix

Since: cosmos-sdk 0.46

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*Bech32PrefixResponse is the response type for Bech32Prefix rpc method.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» bech32_prefixstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AddressBytesToString

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/bech32/{address_bytes}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/bech32/{address_bytes}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/bech32/{address_bytes}

AddressBytesToString converts Account Address bytes to string

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
address_bytespathstring(byte)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*AddressBytesToStringResponse is the response type for AddressString rpc method.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» address_stringstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AddressStringToBytes

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/bech32/{address_string}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/bech32/{address_string}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/bech32/{address_string}

AddressStringToBytes converts Address string to bytes

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
address_stringpathstringtruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*AddressStringToBytesResponse is the response type for AddressBytes rpc method.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» address_bytesstring(byte)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ModuleAccounts

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/module_accounts', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/module_accounts',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/module_accounts

ModuleAccounts returns all the existing module accounts.

Since: cosmos-sdk 0.46

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QueryModuleAccountsResponse is the response type for the Query/ModuleAccounts RPC method.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» accounts[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ModuleAccountByName

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/module_accounts/{name}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/module_accounts/{name}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/module_accounts/{name}

ModuleAccountByName returns the module account info by module name

Parameters

NameInTypeRequiredDescription
namepathstringtruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryModuleAccountByNameResponse is the response type for the Query/ModuleAccountByName RPC method.

NameTypeRequiredRestrictionsDescription
» accountobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AuthParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/auth/v1beta1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/auth/v1beta1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/auth/v1beta1/params

Params queries all parameters.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is the response type for the Query/Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams defines the parameters of the module.
»» max_memo_charactersstring(uint64)falsenonenone
»» tx_sig_limitstring(uint64)falsenonenone
»» tx_size_cost_per_bytestring(uint64)falsenonenone
»» sig_verify_cost_ed25519string(uint64)falsenonenone
»» sig_verify_cost_secp256k1string(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Grants

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/authz/v1beta1/grants', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/authz/v1beta1/grants',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/authz/v1beta1/grants

Returns list of Authorization, granted to the grantee by the granter.

Parameters

NameInTypeRequiredDescription
granterquerystringfalsenone
granteequerystringfalsenone
msg_type_urlquerystringfalseOptional, msg_type_url, when set, will query only grants matching given msg type.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryGrantsResponse is the response type for the Query/Authorizations RPC method.

NameTypeRequiredRestrictionsDescription
» grants[object]falsenoneauthorizations is a list of grants granted for grantee by granter.
»» authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» expirationstring(date-time)falsenonenone
» paginationobjectfalsenonepagination defines an pagination for the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GranteeGrants

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/authz/v1beta1/grants/grantee/{grantee}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/authz/v1beta1/grants/grantee/{grantee}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/authz/v1beta1/grants/grantee/{grantee}

GranteeGrants returns a list of GrantAuthorization by grantee.

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
granteepathstringtruenone
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryGranteeGrantsResponse is the response type for the Query/GranteeGrants RPC method.

NameTypeRequiredRestrictionsDescription
» grants[object]falsenonegrants is a list of grants granted to the grantee.
»» GrantAuthorization extends a grant with both the addresses of the grantee and granter.
It is used in genesis.proto and query.protoobjectfalsenonenone
»»» granterstringfalsenonenone
»»» granteestringfalsenonenone
»»» authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»»» expirationstring(date-time)falsenonenone
» paginationobjectfalsenonepagination defines an pagination for the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GranterGrants

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/authz/v1beta1/grants/granter/{granter}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/authz/v1beta1/grants/granter/{granter}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/authz/v1beta1/grants/granter/{granter}

GranterGrants returns list of GrantAuthorization, granted by granter.

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
granterpathstringtruenone
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryGranterGrantsResponse is the response type for the Query/GranterGrants RPC method.

NameTypeRequiredRestrictionsDescription
» grants[object]falsenonegrants is a list of grants granted by the granter.
»» GrantAuthorization extends a grant with both the addresses of the grantee and granter.
It is used in genesis.proto and query.protoobjectfalsenonenone
»»» granterstringfalsenonenone
»»» granteestringfalsenonenone
»»» authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»»» expirationstring(date-time)falsenonenone
» paginationobjectfalsenonepagination defines an pagination for the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AllBalances

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/balances/{address}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/balances/{address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/balances/{address}

AllBalances queries the balance of all coins for a single account.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
addresspathstringtrueaddress is the address to query balances for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.
resolve_denomquerybooleanfalseresolve_denom is the flag to resolve the denom into a human-readable form from the metadata.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

resolve_denom: resolve_denom is the flag to resolve the denom into a human-readable form from the metadata.

Since: cosmos-sdk 0.50

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllBalancesResponse is the response type for the Query/AllBalances RPC method.

NameTypeRequiredRestrictionsDescription
» balances[object]falsenonebalances is the balances of all the coins.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

Balance

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/balances/{address}/by_denom', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/balances/{address}/by_denom',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/balances/{address}/by_denom

Balance queries the balance of a single coin for a single account.

Parameters

NameInTypeRequiredDescription
addresspathstringtrueaddress is the address to query balances for.
denomquerystringfalsedenom is the coin denom to query balances for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryBalanceResponse is the response type for the Query/Balance RPC method.

NameTypeRequiredRestrictionsDescription
» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DenomOwners

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/denom_owners/{denom}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/denom_owners/{denom}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/denom_owners/{denom}

DenomOwners queries for all account addresses that own a particular token denomination.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
denompathstringtruedenom defines the coin denomination to query all account holders for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QueryDenomOwnersResponse defines the RPC response of a DenomOwners RPC query.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» denom_owners[object]falsenonenone
»» addressstringfalsenoneaddress defines the address that owns a particular denomination.
»» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DenomsMetadata

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/denoms_metadata', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/denoms_metadata',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/denoms_metadata

DenomsMetadata queries the client metadata for all registered coin denominations.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDenomsMetadataResponse is the response type for the Query/DenomsMetadata RPC method.

NameTypeRequiredRestrictionsDescription
» metadatas[object]falsenonemetadata provides the client information for all the registered tokens.
»» descriptionstringfalsenonenone
»» denom_units[object]falsenonenone
»»» denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
»»» exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
»»» aliases[string]falsenonenone
»» basestringfalsenonebase represents the base denom (should be the DenomUnit with exponent = 0).
»» displaystringfalsenonedisplay indicates the suggested denom that should bedisplayed in clients.
»» namestringfalsenoneSince: cosmos-sdk 0.43
»» symbolstringfalsenonesymbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43
»» uristringfalsenoneURI to a document (on or off-chain) that contains additional information. Optional.Since: cosmos-sdk 0.46
»» uri_hashstringfalsenoneURIHash is a sha256 hash of a document pointed by URI. It's used to verify thatthe document didn't change. Optional.Since: cosmos-sdk 0.46
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DenomMetadata

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/denoms_metadata/{denom}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/denoms_metadata/{denom}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/denoms_metadata/{denom}

DenomsMetadata queries the client metadata of a given coin denomination.

Parameters

NameInTypeRequiredDescription
denompathstringtruedenom is the coin denom to query the metadata for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDenomMetadataResponse is the response type for the Query/DenomMetadata RPC method.

NameTypeRequiredRestrictionsDescription
» metadataobjectfalsenoneMetadata represents a struct that describesa basic token.
»» descriptionstringfalsenonenone
»» denom_units[object]falsenonenone
»»» denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
»»» exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
»»» aliases[string]falsenonenone
»» basestringfalsenonebase represents the base denom (should be the DenomUnit with exponent = 0).
»» displaystringfalsenonedisplay indicates the suggested denom that should bedisplayed in clients.
»» namestringfalsenoneSince: cosmos-sdk 0.43
»» symbolstringfalsenonesymbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43
»» uristringfalsenoneURI to a document (on or off-chain) that contains additional information. Optional.Since: cosmos-sdk 0.46
»» uri_hashstringfalsenoneURIHash is a sha256 hash of a document pointed by URI. It's used to verify thatthe document didn't change. Optional.Since: cosmos-sdk 0.46

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DenomMetadataByQueryString

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/denoms_metadata_by_query_string', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/denoms_metadata_by_query_string',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/denoms_metadata_by_query_string

DenomsMetadata queries the client metadata of a given coin denomination.

Parameters

NameInTypeRequiredDescription
denomquerystringfalsedenom is the coin denom to query the metadata for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDenomMetadataByQueryStringResponse is the response type for the Query/DenomMetadata RPC method. Identical with QueryDenomMetadataResponse but receives denom as query string in request.

NameTypeRequiredRestrictionsDescription
» metadataobjectfalsenoneMetadata represents a struct that describesa basic token.
»» descriptionstringfalsenonenone
»» denom_units[object]falsenonenone
»»» denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
»»» exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
»»» aliases[string]falsenonenone
»» basestringfalsenonebase represents the base denom (should be the DenomUnit with exponent = 0).
»» displaystringfalsenonedisplay indicates the suggested denom that should bedisplayed in clients.
»» namestringfalsenoneSince: cosmos-sdk 0.43
»» symbolstringfalsenonesymbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43
»» uristringfalsenoneURI to a document (on or off-chain) that contains additional information. Optional.Since: cosmos-sdk 0.46
»» uri_hashstringfalsenoneURIHash is a sha256 hash of a document pointed by URI. It's used to verify thatthe document didn't change. Optional.Since: cosmos-sdk 0.46

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

BankParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/params

Params queries the parameters of x/bank module.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse defines the response type for querying x/bank parameters.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams provides the parameters of the bank module.
»» send_enabled[object]falsenoneDeprecated: Use of SendEnabled in params is deprecated.For genesis, use the newly added send_enabled field in the genesis object.Storage, lookup, and manipulation of this information is now in the keeper.As of cosmos-sdk 0.47, this only exists for backwards compatibility of genesis files.
»»» denomstringfalsenonenone
»»» enabledbooleanfalsenonenone
»» default_send_enabledbooleanfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SendEnabled

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/send_enabled', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/send_enabled',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/send_enabled

SendEnabled queries for SendEnabled entries.

This query only returns denominations that have specific SendEnabled settings. Any denomination that does not have a specific setting will use the default params.default_send_enabled, and will not be returned by this query.

Since: cosmos-sdk 0.47

Parameters

NameInTypeRequiredDescription
denomsqueryarray[string]falsedenoms is the specific denoms you want look up. Leave empty to get all entries.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QuerySendEnabledResponse defines the RPC response of a SendEnable query.

Since: cosmos-sdk 0.47*

NameTypeRequiredRestrictionsDescription
» send_enabled[object]falsenonenone
»» denomstringfalsenonenone
»» enabledbooleanfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response. This field is onlypopulated if the denoms field in the request is empty.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SpendableBalances

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/spendable_balances/{address}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/spendable_balances/{address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/spendable_balances/{address}

SpendableBalances queries the spendable balance of all coins for a single account.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
addresspathstringtrueaddress is the address to query spendable balances for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QuerySpendableBalancesResponse defines the gRPC response structure for querying an account's spendable balances.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» balances[object]falsenonebalances is the spendable balances of all the coins.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SpendableBalanceByDenom

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/spendable_balances/{address}/by_denom', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/spendable_balances/{address}/by_denom',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/spendable_balances/{address}/by_denom

SpendableBalanceByDenom queries the spendable balance of a single denom for a single account.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Since: cosmos-sdk 0.47

Parameters

NameInTypeRequiredDescription
addresspathstringtrueaddress is the address to query balances for.
denomquerystringfalsedenom is the coin denom to query balances for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QuerySpendableBalanceByDenomResponse defines the gRPC response structure for querying an account's spendable balance for a specific denom.

Since: cosmos-sdk 0.47*

NameTypeRequiredRestrictionsDescription
» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

TotalSupply

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/supply', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/supply',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/supply

TotalSupply queries the total supply of all coins.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryTotalSupplyResponse is the response type for the Query/TotalSupply RPC method

NameTypeRequiredRestrictionsDescription
» supply[object]falsenonenone
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.Since: cosmos-sdk 0.43
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SupplyOf

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/bank/v1beta1/supply/by_denom', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/bank/v1beta1/supply/by_denom',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/bank/v1beta1/supply/by_denom

SupplyOf queries the supply of a single coin.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
denomquerystringfalsedenom is the coin denom to query balances for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC method.

NameTypeRequiredRestrictionsDescription
» amountobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

CommunityPool

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/community_pool', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/community_pool',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/community_pool

CommunityPool queries the community pool coins.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryCommunityPoolResponse is the response type for the Query/CommunityPool RPC method.

NameTypeRequiredRestrictionsDescription
» pool[object]falsenonepool defines community pool's coins.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DelegationTotalRewards

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards

DelegationTotalRewards queries the total rewards accrued by each validator.

Parameters

NameInTypeRequiredDescription
delegator_addresspathstringtruedelegator_address defines the delegator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegationTotalRewardsResponse is the response type for the Query/DelegationTotalRewards RPC method.

NameTypeRequiredRestrictionsDescription
» rewards[object]falsenonerewards defines all the rewards accrued by a delegator.
»» validator_addressstringfalsenonenone
»» reward[object]falsenonenone
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
» total[object]falsenonetotal defines the sum of all the rewards.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DelegationRewards

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}

DelegationRewards queries the total rewards accrued by a delegation.

Parameters

NameInTypeRequiredDescription
delegator_addresspathstringtruedelegator_address defines the delegator address to query for.
validator_addresspathstringtruevalidator_address defines the validator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegationRewardsResponse is the response type for the Query/DelegationRewards RPC method.

NameTypeRequiredRestrictionsDescription
» rewards[object]falsenonerewards defines the rewards accrued by a delegation.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DistDelegatorValidators

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/delegators/{delegator_address}/validators', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/delegators/{delegator_address}/validators',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/validators

DelegatorValidators queries the validators of a delegator.

Parameters

NameInTypeRequiredDescription
delegator_addresspathstringtruedelegator_address defines the delegator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegatorValidatorsResponse is the response type for the Query/DelegatorValidators RPC method.

NameTypeRequiredRestrictionsDescription
» validators[string]falsenonevalidators defines the validators a delegator is delegating for.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DelegatorWithdrawAddress

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address

DelegatorWithdrawAddress queries withdraw address of a delegator.

Parameters

NameInTypeRequiredDescription
delegator_addresspathstringtruedelegator_address defines the delegator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegatorWithdrawAddressResponse is the response type for the Query/DelegatorWithdrawAddress RPC method.

NameTypeRequiredRestrictionsDescription
» withdraw_addressstringfalsenonewithdraw_address defines the delegator address to query for.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DistributionParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/params

Params queries params of the distribution module.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is the response type for the Query/Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams defines the parameters of the module.
»» community_taxstringfalsenonenone
»» base_proposer_rewardstringfalsenoneDeprecated: The base_proposer_reward field is deprecated and is no longer usedin the x/distribution module's reward mechanism.
»» bonus_proposer_rewardstringfalsenoneDeprecated: The bonus_proposer_reward field is deprecated and is no longer usedin the x/distribution module's reward mechanism.
»» withdraw_addr_enabledbooleanfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ValidatorDistributionInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/validators/{validator_address}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/validators/{validator_address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/validators/{validator_address}

ValidatorDistributionInfo queries validator commission and self-delegation rewards for validator

Parameters

NameInTypeRequiredDescription
validator_addresspathstringtruevalidator_address defines the validator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorDistributionInfoResponse is the response type for the Query/ValidatorDistributionInfo RPC method.

NameTypeRequiredRestrictionsDescription
» operator_addressstringfalsenoneoperator_address defines the validator operator address.
» self_bond_rewards[object]falsenoneself_bond_rewards defines the self delegations rewards.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» commission[object]falsenonecommission defines the commission the validator received.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ValidatorCommission

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/validators/{validator_address}/commission', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/validators/{validator_address}/commission',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/validators/{validator_address}/commission

ValidatorCommission queries accumulated commission for a validator.

Parameters

NameInTypeRequiredDescription
validator_addresspathstringtruevalidator_address defines the validator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorCommissionResponse is the response type for the Query/ValidatorCommission RPC method

NameTypeRequiredRestrictionsDescription
» commissionobjectfalsenonecommission defines the commission the validator received.
»» commission[object]falsenonenone
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ValidatorOutstandingRewards

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards

ValidatorOutstandingRewards queries rewards of a validator address.

Parameters

NameInTypeRequiredDescription
validator_addresspathstringtruevalidator_address defines the validator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorOutstandingRewardsResponse is the response type for the Query/ValidatorOutstandingRewards RPC method.

NameTypeRequiredRestrictionsDescription
» rewardsobjectfalsenoneValidatorOutstandingRewards represents outstanding (un-withdrawn) rewardsfor a validator inexpensive to track, allows simple sanity checks.
»» rewards[object]falsenonenone
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

ValidatorSlashes

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/distribution/v1beta1/validators/{validator_address}/slashes', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/distribution/v1beta1/validators/{validator_address}/slashes',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/distribution/v1beta1/validators/{validator_address}/slashes

ValidatorSlashes queries slash events of a validator.

Parameters

NameInTypeRequiredDescription
validator_addresspathstringtruevalidator_address defines the validator address to query for.
starting_heightquerystring(uint64)falsestarting_height defines the optional starting height to query the slashes.
ending_heightquerystring(uint64)falsestarting_height defines the optional ending height to query the slashes.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorSlashesResponse is the response type for the Query/ValidatorSlashes RPC method.

NameTypeRequiredRestrictionsDescription
» slashes[object]falsenoneslashes defines the slashes the validator received.
»» validator_periodstring(uint64)falsenonenone
»» fractionstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

AllEvidence

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/evidence/v1beta1/evidence', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/evidence/v1beta1/evidence',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/evidence/v1beta1/evidence

AllEvidence queries all evidence.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllEvidenceResponse is the response type for the Query/AllEvidence RPC method.

NameTypeRequiredRestrictionsDescription
» evidence[object]falsenoneevidence returns all evidences.
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Evidence

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/evidence/v1beta1/evidence/{hash}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/evidence/v1beta1/evidence/{hash}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/evidence/v1beta1/evidence/{hash}

Evidence queries evidence based on evidence hash.

Parameters

NameInTypeRequiredDescription
hashpathstringtruehash defines the evidence hash of the requested evidence.
evidence_hashquerystring(byte)falseevidence_hash defines the hash of the requested evidence.

Detailed descriptions

hash: hash defines the evidence hash of the requested evidence.

Since: cosmos-sdk 0.47

evidence_hash: evidence_hash defines the hash of the requested evidence. Deprecated: Use hash, a HEX encoded string, instead.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryEvidenceResponse is the response type for the Query/Evidence RPC method.

NameTypeRequiredRestrictionsDescription
» evidenceobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Allowance

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}

Allowance returns granted allwance to the grantee by the granter.

Parameters

NameInTypeRequiredDescription
granterpathstringtruegranter is the address of the user granting an allowance of their funds.
granteepathstringtruegrantee is the address of the user being granted an allowance of another user's funds.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllowanceResponse is the response type for the Query/Allowance RPC method.

NameTypeRequiredRestrictionsDescription
» allowanceobjectfalsenoneallowance is a allowance granted for grantee by granter.
»» granterstringfalsenonegranter is the address of the user granting an allowance of their funds.
»» granteestringfalsenonegrantee is the address of the user being granted an allowance of another user's funds.
»» allowanceobjectfalsenoneallowance can be any of basic, periodic, allowed fee allowance.
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Allowances

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/feegrant/v1beta1/allowances/{grantee}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/feegrant/v1beta1/allowances/{grantee}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/feegrant/v1beta1/allowances/{grantee}

Allowances returns all the grants for the given grantee address.

Parameters

NameInTypeRequiredDescription
granteepathstringtruenone
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAllowancesResponse is the response type for the Query/Allowances RPC method.

NameTypeRequiredRestrictionsDescription
» allowances[object]falsenoneallowances are allowance's granted for grantee by granter.
»» Grant is stored in the KVStore to record a grant with full contextobjectfalsenonenone
»»» granterstringfalsenonegranter is the address of the user granting an allowance of their funds.
»»» granteestringfalsenonegrantee is the address of the user being granted an allowance of another user's funds.
»»» allowanceobjectfalsenoneallowance can be any of basic, periodic, allowed fee allowance.
»»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» paginationobjectfalsenonepagination defines an pagination for the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AllowancesByGranter

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/feegrant/v1beta1/issued/{granter}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/feegrant/v1beta1/issued/{granter}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/feegrant/v1beta1/issued/{granter}

AllowancesByGranter returns all the grants given by an address

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
granterpathstringtruenone
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QueryAllowancesByGranterResponse is the response type for the Query/AllowancesByGranter RPC method.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» allowances[object]falsenoneallowances that have been issued by the granter.
»» Grant is stored in the KVStore to record a grant with full contextobjectfalsenonenone
»»» granterstringfalsenonegranter is the address of the user granting an allowance of their funds.
»»» granteestringfalsenonegrantee is the address of the user being granted an allowance of another user's funds.
»»» allowanceobjectfalsenoneallowance can be any of basic, periodic, allowed fee allowance.
»»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» paginationobjectfalsenonepagination defines an pagination for the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GovParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/params/{params_type}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/params/{params_type}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/params/{params_type}

Params queries all parameters of the gov module.

Parameters

NameInTypeRequiredDescription
params_typepathstringtrueparams_type defines which parameters to query for, can be one of "voting",

Detailed descriptions

params_type: params_type defines which parameters to query for, can be one of "voting", "tallying" or "deposit".

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is the response type for the Query/Params RPC method.

NameTypeRequiredRestrictionsDescription
» voting_paramsobjectfalsenonevoting_params defines the parameters related to voting.
»» voting_periodstringfalsenoneDuration of the voting period.
» deposit_paramsobjectfalsenonedeposit_params defines the parameters related to deposit.
»» min_deposit[object]falsenoneMinimum deposit for a proposal to enter voting period.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
»» max_deposit_periodstringfalsenoneMaximum period for Atom holders to deposit on a proposal. Initial value: 2months.
» tally_paramsobjectfalsenonetally_params defines the parameters related to tally.
»» quorumstring(byte)falsenoneMinimum percentage of total stake needed to vote for a result to beconsidered valid.
»» thresholdstring(byte)falsenoneMinimum proportion of Yes votes for proposal to pass. Default value: 0.5.
»» veto_thresholdstring(byte)falsenoneMinimum value of Veto votes to Total votes ratio for proposal to bevetoed. Default value: 1/3.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Proposals

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/proposals', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/proposals',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/proposals

Proposals queries all proposals based on given status.

Parameters

NameInTypeRequiredDescription
proposal_statusquerystringfalseproposal_status defines the status of the proposals.
voterquerystringfalsevoter defines the voter address for the proposals.
depositorquerystringfalsedepositor defines the deposit addresses from the proposals.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

proposal_status: proposal_status defines the status of the proposals.

  • PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
  • PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit period.
  • PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting period.
  • PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has passed.
  • PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has been rejected.
  • PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has failed.

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Enumerated Values

ParameterValue
proposal_statusPROPOSAL_STATUS_UNSPECIFIED
proposal_statusPROPOSAL_STATUS_DEPOSIT_PERIOD
proposal_statusPROPOSAL_STATUS_VOTING_PERIOD
proposal_statusPROPOSAL_STATUS_PASSED
proposal_statusPROPOSAL_STATUS_REJECTED
proposal_statusPROPOSAL_STATUS_FAILED

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryProposalsResponse is the response type for the Query/Proposals RPC method.

NameTypeRequiredRestrictionsDescription
» proposals[object]falsenoneproposals defines all the requested governance proposals.
»» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
»» contentobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» statusstringfalsenonestatus defines the proposal status.
»» final_tally_resultobjectfalsenonefinal_tally_result is the final tally result of the proposal. Whenquerying a proposal via gRPC, this field is not populated until theproposal's voting period has ended.
»»» yesstringfalsenoneyes is the number of yes votes on a proposal.
»»» abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
»»» nostringfalsenoneno is the number of no votes on a proposal.
»»» no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.
»» submit_timestring(date-time)falsenonesubmit_time is the time of proposal submission.
»» deposit_end_timestring(date-time)falsenonedeposit_end_time is the end time for deposition.
»» total_deposit[object]falsenonetotal_deposit is the total deposit on the proposal.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
»» voting_start_timestring(date-time)falsenonevoting_start_time is the starting time to vote on a proposal.
»» voting_end_timestring(date-time)falsenonevoting_end_time is the end time of voting on a proposal.
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusPROPOSAL_STATUS_UNSPECIFIED
statusPROPOSAL_STATUS_DEPOSIT_PERIOD
statusPROPOSAL_STATUS_VOTING_PERIOD
statusPROPOSAL_STATUS_PASSED
statusPROPOSAL_STATUS_REJECTED
statusPROPOSAL_STATUS_FAILED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Proposal

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/proposals/{proposal_id}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/proposals/{proposal_id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/proposals/{proposal_id}

Proposal queries proposal details based on ProposalID.

Parameters

NameInTypeRequiredDescription
proposal_idpathstring(uint64)trueproposal_id defines the unique id of the proposal.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryProposalResponse is the response type for the Query/Proposal RPC method.

NameTypeRequiredRestrictionsDescription
» proposalobjectfalsenoneProposal defines the core field members of a governance proposal.
»» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
»» contentobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» statusstringfalsenonestatus defines the proposal status.
»» final_tally_resultobjectfalsenonefinal_tally_result is the final tally result of the proposal. Whenquerying a proposal via gRPC, this field is not populated until theproposal's voting period has ended.
»»» yesstringfalsenoneyes is the number of yes votes on a proposal.
»»» abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
»»» nostringfalsenoneno is the number of no votes on a proposal.
»»» no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.
»» submit_timestring(date-time)falsenonesubmit_time is the time of proposal submission.
»» deposit_end_timestring(date-time)falsenonedeposit_end_time is the end time for deposition.
»» total_deposit[object]falsenonetotal_deposit is the total deposit on the proposal.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
»» voting_start_timestring(date-time)falsenonevoting_start_time is the starting time to vote on a proposal.
»» voting_end_timestring(date-time)falsenonevoting_end_time is the end time of voting on a proposal.

Enumerated Values

PropertyValue
statusPROPOSAL_STATUS_UNSPECIFIED
statusPROPOSAL_STATUS_DEPOSIT_PERIOD
statusPROPOSAL_STATUS_VOTING_PERIOD
statusPROPOSAL_STATUS_PASSED
statusPROPOSAL_STATUS_REJECTED
statusPROPOSAL_STATUS_FAILED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Deposits

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits

Deposits queries all deposits of a single proposal.

Parameters

NameInTypeRequiredDescription
proposal_idpathstring(uint64)trueproposal_id defines the unique id of the proposal.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDepositsResponse is the response type for the Query/Deposits RPC method.

NameTypeRequiredRestrictionsDescription
» deposits[object]falsenonedeposits defines the requested deposits.
»» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
»» depositorstringfalsenonedepositor defines the deposit addresses from the proposals.
»» amount[object]falsenoneamount to be deposited by depositor.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Deposit

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}

Deposit queries single deposit information based on proposalID, depositor address.

Parameters

NameInTypeRequiredDescription
proposal_idpathstring(uint64)trueproposal_id defines the unique id of the proposal.
depositorpathstringtruedepositor defines the deposit addresses from the proposals.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDepositResponse is the response type for the Query/Deposit RPC method.

NameTypeRequiredRestrictionsDescription
» depositobjectfalsenoneDeposit defines an amount deposited by an account address to an activeproposal.
»» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
»» depositorstringfalsenonedepositor defines the deposit addresses from the proposals.
»» amount[object]falsenoneamount to be deposited by depositor.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

TallyResult

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/proposals/{proposal_id}/tally', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/proposals/{proposal_id}/tally',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/proposals/{proposal_id}/tally

TallyResult queries the tally of a proposal vote.

Parameters

NameInTypeRequiredDescription
proposal_idpathstring(uint64)trueproposal_id defines the unique id of the proposal.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryTallyResultResponse is the response type for the Query/Tally RPC method.

NameTypeRequiredRestrictionsDescription
» tallyobjectfalsenonetally defines the requested tally.
»» yesstringfalsenoneyes is the number of yes votes on a proposal.
»» abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
»» nostringfalsenoneno is the number of no votes on a proposal.
»» no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Votes

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/proposals/{proposal_id}/votes', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/proposals/{proposal_id}/votes',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/proposals/{proposal_id}/votes

Votes queries votes of a given proposal.

Parameters

NameInTypeRequiredDescription
proposal_idpathstring(uint64)trueproposal_id defines the unique id of the proposal.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryVotesResponse is the response type for the Query/Votes RPC method.

NameTypeRequiredRestrictionsDescription
» votes[object]falsenonevotes defines the queried votes.
»» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
»» voterstringfalsenonevoter is the voter address of the proposal.
»» optionstringfalsenoneDeprecated: Prefer to use options instead. This field is set in queriesif and only if len(options) == 1 and that option has weight 1. In allother cases, this field will default to VOTE_OPTION_UNSPECIFIED.
»» options[object]falsenoneoptions is the weighted vote options.Since: cosmos-sdk 0.43
»»» optionstringfalsenoneoption defines the valid vote options, it must not contain duplicate vote options.
»»» weightstringfalsenoneweight is the vote weight associated with the vote option.
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Vote

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}

Vote queries voted information based on proposalID, voterAddr. Due to how we handle state, this query would error for proposals that has already been finished.

Parameters

NameInTypeRequiredDescription
proposal_idpathstring(uint64)trueproposal_id defines the unique id of the proposal.
voterpathstringtruevoter defines the voter address for the proposals.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryVoteResponse is the response type for the Query/Vote RPC method.

NameTypeRequiredRestrictionsDescription
» voteobjectfalsenoneVote defines a vote on a governance proposal.A Vote consists of a proposal ID, the voter, and the vote option.
»» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
»» voterstringfalsenonevoter is the voter address of the proposal.
»» optionstringfalsenoneDeprecated: Prefer to use options instead. This field is set in queriesif and only if len(options) == 1 and that option has weight 1. In allother cases, this field will default to VOTE_OPTION_UNSPECIFIED.
»» options[object]falsenoneoptions is the weighted vote options.Since: cosmos-sdk 0.43
»»» optionstringfalsenoneoption defines the valid vote options, it must not contain duplicate vote options.
»»» weightstringfalsenoneweight is the vote weight associated with the vote option.

Enumerated Values

PropertyValue
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AnnualProvisions

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/mint/v1beta1/annual_provisions', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/mint/v1beta1/annual_provisions',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/mint/v1beta1/annual_provisions

AnnualProvisions current minting annual provisions value.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAnnualProvisionsResponse is the response type for the Query/AnnualProvisions RPC method.

NameTypeRequiredRestrictionsDescription
» annual_provisionsstring(byte)falsenoneannual_provisions is the current minting annual provisions value.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

Inflation

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/mint/v1beta1/inflation', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/mint/v1beta1/inflation',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/mint/v1beta1/inflation

Inflation returns the current minting inflation value.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryInflationResponse is the response type for the Query/Inflation RPC method.

NameTypeRequiredRestrictionsDescription
» inflationstring(byte)falsenoneinflation is the current minting inflation value.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

MintParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/mint/v1beta1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/mint/v1beta1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/mint/v1beta1/params

Params returns the total set of minting parameters.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is the response type for the Query/Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams defines the parameters of the module.
»» mint_denomstringfalsenonenone
»» inflation_rate_changestringfalsenonenone
»» inflation_maxstringfalsenonenone
»» inflation_minstringfalsenonenone
»» goal_bondedstringfalsenonenone
»» blocks_per_yearstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

Params

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/params/v1beta1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/params/v1beta1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/params/v1beta1/params

Params queries a specific parameter of a module, given its subspace and key.

Parameters

NameInTypeRequiredDescription
subspacequerystringfalsesubspace defines the module to query the parameter for.
keyquerystringfalsekey defines the key of the parameter in the subspace.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is response type for the Query/Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramobjectfalsenoneparam defines the queried parameter.
»» subspacestringfalsenonenone
»» keystringfalsenonenone
»» valuestringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

Subspaces

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/params/v1beta1/subspaces', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/params/v1beta1/subspaces',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/params/v1beta1/subspaces

Subspaces queries for all registered subspaces and all keys for a subspace.

Since: cosmos-sdk 0.46

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QuerySubspacesResponse defines the response types for querying for all registered subspaces and all keys for a subspace.

Since: cosmos-sdk 0.46*

NameTypeRequiredRestrictionsDescription
» subspaces[object]falsenonenone
»» subspacestringfalsenonenone
»» keys[string]falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SlashingParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/slashing/v1beta1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/slashing/v1beta1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/slashing/v1beta1/params

Params queries the parameters of slashing module

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is the response type for the Query/Params RPC method

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneParams represents the parameters used for by the slashing module.
»» signed_blocks_windowstring(int64)falsenonenone
»» min_signed_per_windowstring(byte)falsenonenone
»» downtime_jail_durationstringfalsenonenone
»» slash_fraction_double_signstring(byte)falsenonenone
»» slash_fraction_downtimestring(byte)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SigningInfos

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/slashing/v1beta1/signing_infos', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/slashing/v1beta1/signing_infos',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/slashing/v1beta1/signing_infos

SigningInfos queries signing info of all validators

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QuerySigningInfosResponse is the response type for the Query/SigningInfos RPC method

NameTypeRequiredRestrictionsDescription
» info[object]falsenonenone
»» addressstringfalsenonenone
»» start_heightstring(int64)falsenonenone
»» index_offsetstring(int64)falsenoneIndex which is incremented every time a validator is bonded in a block andmay have signed a pre-commit or not. This in conjunction with thesigned_blocks_window param determines the index in the missed block bitmap.
»» jailed_untilstring(date-time)falsenoneTimestamp until which the validator is jailed due to liveness downtime.
»» tombstonedbooleanfalsenoneWhether or not a validator has been tombstoned (killed out of validatorset). It is set once the validator commits an equivocation or for any otherconfigured misbehavior.
»» missed_blocks_counterstring(int64)falsenoneA counter of missed (unsigned) blocks. It is used to avoid unnecessaryreads in the missed block bitmap.
» paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

SigningInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/slashing/v1beta1/signing_infos/{cons_address}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/slashing/v1beta1/signing_infos/{cons_address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/slashing/v1beta1/signing_infos/{cons_address}

SigningInfo queries the signing info of given cons address

Parameters

NameInTypeRequiredDescription
cons_addresspathstringtruecons_address is the address to query signing info of

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QuerySigningInfoResponse is the response type for the Query/SigningInfo RPC method

NameTypeRequiredRestrictionsDescription
» val_signing_infoobjectfalsenoneValidatorSigningInfo defines a validator's signing info for monitoring theirliveness activity.
»» addressstringfalsenonenone
»» start_heightstring(int64)falsenonenone
»» index_offsetstring(int64)falsenoneIndex which is incremented every time a validator is bonded in a block andmay have signed a pre-commit or not. This in conjunction with thesigned_blocks_window param determines the index in the missed block bitmap.
»» jailed_untilstring(date-time)falsenoneTimestamp until which the validator is jailed due to liveness downtime.
»» tombstonedbooleanfalsenoneWhether or not a validator has been tombstoned (killed out of validatorset). It is set once the validator commits an equivocation or for any otherconfigured misbehavior.
»» missed_blocks_counterstring(int64)falsenoneA counter of missed (unsigned) blocks. It is used to avoid unnecessaryreads in the missed block bitmap.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenonenone
»» valuestring(byte)falsenonenone

DelegatorDelegations

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/delegations/{delegator_addr}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/delegations/{delegator_addr}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/delegations/{delegator_addr}

DelegatorDelegations queries all delegations of a given delegator address.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
delegator_addrpathstringtruedelegator_addr defines the delegator address to query for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegatorDelegationsResponse is response type for the Query/DelegatorDelegations RPC method.

NameTypeRequiredRestrictionsDescription
» delegation_responses[object]falsenonedelegation_responses defines all the delegations' info of a delegator.
»» delegationobjectfalsenoneDelegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator.
»»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»»» sharesstringfalsenoneshares define the delegation shares received.
»» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Redelegations

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations

Redelegations queries redelegations of given address.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
delegator_addrpathstringtruedelegator_addr defines the delegator address to query for.
src_validator_addrquerystringfalsesrc_validator_addr defines the validator address to redelegate from.
dst_validator_addrquerystringfalsedst_validator_addr defines the validator address to redelegate to.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryRedelegationsResponse is response type for the Query/Redelegations RPC method.

NameTypeRequiredRestrictionsDescription
» redelegation_responses[object]falsenonenone
»» redelegationobjectfalsenoneRedelegation contains the list of a particular delegator's redelegating bondsfrom a particular source validator to a particular destination validator.
»»» delegator_addressstringfalsenonedelegator_address is the bech32-encoded address of the delegator.
»»» validator_src_addressstringfalsenonevalidator_src_address is the validator redelegation source operator address.
»»» validator_dst_addressstringfalsenonevalidator_dst_address is the validator redelegation destination operator address.
»»» entries[object]falsenoneentries are the redelegation entries.
»»»» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
»»»» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
»»»» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
»»»» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
»»»» unbonding_idstring(uint64)falsenonenone
»»»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»» entries[object]falsenonenone
»»» redelegation_entryobjectfalsenoneRedelegationEntry defines a redelegation object with relevant metadata.
»»»» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
»»»» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
»»»» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
»»»» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
»»»» unbonding_idstring(uint64)falsenonenone
»»»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»»» balancestringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

DelegatorUnbondingDelegations

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations

DelegatorUnbondingDelegations queries all unbonding delegations of a given delegator address.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
delegator_addrpathstringtruedelegator_addr defines the delegator address to query for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUnbondingDelegatorDelegationsResponse is response type for the Query/UnbondingDelegatorDelegations RPC method.

NameTypeRequiredRestrictionsDescription
» unbonding_responses[object]falsenonenone
»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»» entries[object]falsenoneentries are the unbonding delegation entries.
»»» creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
»»» completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
»»» initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
»»» balancestringfalsenonebalance defines the tokens to receive at completion.
»»» unbonding_idstring(uint64)falsenonenone
»»» unbonding_on_hold_ref_countstring(int64)falsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

DelegatorValidators

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators

DelegatorValidators queries all validators info for given delegator address.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
delegator_addrpathstringtruedelegator_addr defines the delegator address to query for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegatorValidatorsResponse is response type for the Query/DelegatorValidators RPC method.

NameTypeRequiredRestrictionsDescription
» validators[object]falsenonevalidators defines the validators' info of a delegator.
»» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
»» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
»» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
»» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
»» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
»» descriptionobjectfalsenonedescription defines the description terms for the validator.
»»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»»» websitestringfalsenonewebsite defines an optional website link.
»»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»»» detailsstringfalsenonedetails define other optional details.
»» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
»» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
»» commissionobjectfalsenonecommission defines the commission parameters.
»»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
»» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»» unbonding_ids[string]falsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

DelegatorValidator

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}

DelegatorValidator queries validator info for given delegator validator pair.

Parameters

NameInTypeRequiredDescription
delegator_addrpathstringtruedelegator_addr defines the delegator address to query for.
validator_addrpathstringtruevalidator_addr defines the validator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegatorValidatorResponse response type for the Query/DelegatorValidator RPC method.

NameTypeRequiredRestrictionsDescription
» validatorobjectfalsenoneValidator defines a validator, together with the total amount of theValidator's bond shares and their exchange rate to coins. Slashing results ina decrease in the exchange rate, allowing correct calculation of futureundelegations without iterating over delegators. When coins are delegated tothis validator, the validator is credited with a delegation whose number ofbond shares is based on the amount of coins delegated divided by the currentexchange rate. Voting power can be calculated as total bonded sharesmultiplied by exchange rate.
»» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
»» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
»» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
»» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
»» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
»» descriptionobjectfalsenonedescription defines the description terms for the validator.
»»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»»» websitestringfalsenonewebsite defines an optional website link.
»»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»»» detailsstringfalsenonedetails define other optional details.
»» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
»» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
»» commissionobjectfalsenonecommission defines the commission parameters.
»»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
»» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»» unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

HistoricalInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/historical_info/{height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/historical_info/{height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/historical_info/{height}

HistoricalInfo queries the historical info for given height.

Parameters

NameInTypeRequiredDescription
heightpathstring(int64)trueheight defines at which height to query the historical info.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryHistoricalInfoResponse is response type for the Query/HistoricalInfo RPC method.

NameTypeRequiredRestrictionsDescription
» histobjectfalsenonehist defines the historical info at the given height.
»» headerobjectfalsenoneHeader defines the structure of a block header.
»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»» blockstring(uint64)falsenonenone
»»»» appstring(uint64)falsenonenone
»»» chain_idstringfalsenonenone
»»» heightstring(int64)falsenonenone
»»» timestring(date-time)falsenonenone
»»» last_block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» last_commit_hashstring(byte)falsenonenone
»»» data_hashstring(byte)falsenonenone
»»» validators_hashstring(byte)falsenonenone
»»» next_validators_hashstring(byte)falsenonenone
»»» consensus_hashstring(byte)falsenonenone
»»» app_hashstring(byte)falsenonenone
»»» last_results_hashstring(byte)falsenonenone
»»» evidence_hashstring(byte)falsenonenone
»»» proposer_addressstring(byte)falsenonenone
»» valset[object]falsenonenone
»»» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
»»» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»»» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
»»» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
»»» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
»»» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
»»» descriptionobjectfalsenonedescription defines the description terms for the validator.
»»»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»»»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»»»» websitestringfalsenonewebsite defines an optional website link.
»»»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»»»» detailsstringfalsenonedetails define other optional details.
»»» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
»»» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
»»» commissionobjectfalsenonecommission defines the commission parameters.
»»»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»»»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
»»» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
»»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»»» unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

StakingParams

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/params', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/params',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/params

Parameters queries the staking parameters.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryParamsResponse is response type for the Query/Params RPC method.

NameTypeRequiredRestrictionsDescription
» paramsobjectfalsenoneparams holds all the parameters of this module.
»» unbonding_timestringfalsenoneunbonding_time is the time duration of unbonding.
»» max_validatorsinteger(int64)falsenonemax_validators is the maximum number of validators.
»» max_entriesinteger(int64)falsenonemax_entries is the max entries for either unbonding delegation or redelegation (per pair/trio).
»» historical_entriesinteger(int64)falsenonehistorical_entries is the number of historical entries to persist.
»» bond_denomstringfalsenonebond_denom defines the bondable coin denomination.
»» min_commission_ratestringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Pool

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/pool', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/pool',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/pool

Pool queries the pool info.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryPoolResponse is response type for the Query/Pool RPC method.

NameTypeRequiredRestrictionsDescription
» poolobjectfalsenonepool defines the pool info.
»» not_bonded_tokensstringfalsenonenone
»» bonded_tokensstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Validators

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/validators', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/validators',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/validators

Validators queries all validators that match the given status.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
statusquerystringfalsestatus enables to query for validators matching a given status.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorsResponse is response type for the Query/Validators RPC method

NameTypeRequiredRestrictionsDescription
» validators[object]falsenonevalidators contains all the queried validators.
»» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
»» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
»» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
»» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
»» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
»» descriptionobjectfalsenonedescription defines the description terms for the validator.
»»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»»» websitestringfalsenonewebsite defines an optional website link.
»»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»»» detailsstringfalsenonedetails define other optional details.
»» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
»» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
»» commissionobjectfalsenonecommission defines the commission parameters.
»»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
»» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»» unbonding_ids[string]falsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Validator

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/validators/{validator_addr}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/validators/{validator_addr}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/validators/{validator_addr}

Validator queries validator info for given validator address.

Parameters

NameInTypeRequiredDescription
validator_addrpathstringtruevalidator_addr defines the validator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorResponse is response type for the Query/Validator RPC method

NameTypeRequiredRestrictionsDescription
» validatorobjectfalsenoneValidator defines a validator, together with the total amount of theValidator's bond shares and their exchange rate to coins. Slashing results ina decrease in the exchange rate, allowing correct calculation of futureundelegations without iterating over delegators. When coins are delegated tothis validator, the validator is credited with a delegation whose number ofbond shares is based on the amount of coins delegated divided by the currentexchange rate. Voting power can be calculated as total bonded sharesmultiplied by exchange rate.
»» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
»» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
»» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
»» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
»» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
»» descriptionobjectfalsenonedescription defines the description terms for the validator.
»»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»»» websitestringfalsenonewebsite defines an optional website link.
»»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»»» detailsstringfalsenonedetails define other optional details.
»» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
»» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
»» commissionobjectfalsenonecommission defines the commission parameters.
»»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
»» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»» unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ValidatorDelegations

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/validators/{validator_addr}/delegations', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/validators/{validator_addr}/delegations',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations

ValidatorDelegations queries delegate info for given validator.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
validator_addrpathstringtruevalidator_addr defines the validator address to query for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorDelegationsResponse is response type for the Query/ValidatorDelegations RPC method

NameTypeRequiredRestrictionsDescription
» delegation_responses[object]falsenonenone
»» delegationobjectfalsenoneDelegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator.
»»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»»» sharesstringfalsenoneshares define the delegation shares received.
»» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Delegation

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}

Delegation queries delegate info for given validator delegator pair.

Parameters

NameInTypeRequiredDescription
validator_addrpathstringtruevalidator_addr defines the validator address to query for.
delegator_addrpathstringtruedelegator_addr defines the delegator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegationResponse is response type for the Query/Delegation RPC method.

NameTypeRequiredRestrictionsDescription
» delegation_responseobjectfalsenoneDelegationResponse is equivalent to Delegation except that it contains abalance in addition to shares which is more suitable for client responses.
»» delegationobjectfalsenoneDelegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator.
»»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»»» sharesstringfalsenoneshares define the delegation shares received.
»» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

UnbondingDelegation

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation

UnbondingDelegation queries unbonding info for given validator delegator pair.

Parameters

NameInTypeRequiredDescription
validator_addrpathstringtruevalidator_addr defines the validator address to query for.
delegator_addrpathstringtruedelegator_addr defines the delegator address to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryDelegationResponse is response type for the Query/UnbondingDelegation RPC method.

NameTypeRequiredRestrictionsDescription
» unbondobjectfalsenoneUnbondingDelegation stores all of a single delegator's unbonding bondsfor a single validator in an time-ordered list.
»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»» entries[object]falsenoneentries are the unbonding delegation entries.
»»» creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
»»» completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
»»» initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
»»» balancestringfalsenonebalance defines the tokens to receive at completion.
»»» unbonding_idstring(uint64)falsenonenone
»»» unbonding_on_hold_ref_countstring(int64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ValidatorUnbondingDelegations

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations

ValidatorUnbondingDelegations queries unbonding delegations of a validator.

When called from another module, this query might consume a high amount of gas if the pagination field is incorrectly set.

Parameters

NameInTypeRequiredDescription
validator_addrpathstringtruevalidator_addr defines the validator address to query for.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryValidatorUnbondingDelegationsResponse is response type for the Query/ValidatorUnbondingDelegations RPC method.

NameTypeRequiredRestrictionsDescription
» unbonding_responses[object]falsenonenone
»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»» entries[object]falsenoneentries are the unbonding delegation entries.
»»» creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
»»» completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
»»» initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
»»» balancestringfalsenonebalance defines the tokens to receive at completion.
»»» unbonding_idstring(uint64)falsenonenone
»»» unbonding_on_hold_ref_countstring(int64)falsenonenone
» paginationobjectfalsenonepagination defines the pagination in the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

AppliedPlan

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/upgrade/v1beta1/applied_plan/{name}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/upgrade/v1beta1/applied_plan/{name}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/upgrade/v1beta1/applied_plan/{name}

AppliedPlan queries a previously applied upgrade plan by its name.

Parameters

NameInTypeRequiredDescription
namepathstringtruename is the name of the applied plan to query for.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAppliedPlanResponse is the response type for the Query/AppliedPlan RPC method.

NameTypeRequiredRestrictionsDescription
» heightstring(int64)falsenoneheight is the block height at which the plan was applied.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Authority

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/upgrade/v1beta1/authority', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/upgrade/v1beta1/authority',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/upgrade/v1beta1/authority

Returns the account with authority to conduct upgrades

Since: cosmos-sdk 0.46

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryAuthorityResponse is the response type for Query/Authority

NameTypeRequiredRestrictionsDescription
» addressstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

CurrentPlan

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/upgrade/v1beta1/current_plan', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/upgrade/v1beta1/current_plan',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/upgrade/v1beta1/current_plan

CurrentPlan queries the current upgrade plan.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryCurrentPlanResponse is the response type for the Query/CurrentPlan RPC method.

NameTypeRequiredRestrictionsDescription
» planobjectfalsenoneplan is the current upgrade plan.
»» namestringfalsenoneSets the name for the upgrade. This name will be used by the upgradedversion of the software to apply any special "on-upgrade" commands duringthe first BeginBlock method after the upgrade is applied. It is also usedto detect whether a software version can handle a given upgrade. If noupgrade handler with this name has been set in the software, it will beassumed that the software is out-of-date when the upgrade Time or Height isreached and the software will exit.
»» timestring(date-time)falsenoneDeprecated: Time based upgrades have been deprecated. Time based upgrade logichas been removed from the SDK.If this field is not empty, an error will be thrown.
»» heightstring(int64)falsenoneThe height at which the upgrade must be performed.
»» infostringfalsenonenone
»» upgraded_client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ModuleVersions

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/upgrade/v1beta1/module_versions', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/upgrade/v1beta1/module_versions',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/upgrade/v1beta1/module_versions

ModuleVersions queries the list of module versions from state.

Since: cosmos-sdk 0.43

Parameters

NameInTypeRequiredDescription
module_namequerystringfalsemodule_name is a field to query a specific module

Detailed descriptions

module_name: module_name is a field to query a specific module consensus version from state. Leaving this empty will fetch the full list of module versions from state.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*QueryModuleVersionsResponse is the response type for the Query/ModuleVersions RPC method.

Since: cosmos-sdk 0.43*

NameTypeRequiredRestrictionsDescription
» module_versions[object]falsenonemodule_versions is a list of module names with their consensus versions.
»» namestringfalsenonenone
»» versionstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

UpgradedConsensusState

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}

UpgradedConsensusState queries the consensus state that will serve as a trusted kernel for the next version of this chain. It will only be stored at the last height of this chain. UpgradedConsensusState RPC not supported with legacy querier This rpc is deprecated now that IBC has its own replacement (https://github.com/cosmos/ibc-go/blob/2c880a22e9f9cc75f62b527ca94aa75ce1106001/proto/ibc/core/client/v1/query.proto#L54 (opens in a new tab))

Parameters

NameInTypeRequiredDescription
last_heightpathstring(int64)truelast height of the current chain must be sent in request

Detailed descriptions

last_height: last height of the current chain must be sent in request as this is the height under which next consensus state is stored

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

QueryUpgradedConsensusStateResponse is the response type for the Query/UpgradedConsensusState RPC method.

NameTypeRequiredRestrictionsDescription
» upgraded_consensus_statestring(byte)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Service

TxDecode

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/cosmos/tx/v1beta1/decode', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "tx_bytes": "string"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/decode',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /cosmos/tx/v1beta1/decode

TxDecode decodes the transaction.

Since: cosmos-sdk 0.47

Body parameter

{
  "tx_bytes": "string"
}

Parameters

NameInTypeRequiredDescription
bodybodyobjecttruenone
» tx_bytesbodystring(byte)falsetx_bytes is the raw transaction.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.cosmos.tx.v1beta1.TxDecodeResponse
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

TxDecodeAmino

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/cosmos/tx/v1beta1/decode/amino', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "amino_binary": "string"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/decode/amino',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /cosmos/tx/v1beta1/decode/amino

TxDecodeAmino decodes an Amino transaction from encoded bytes to JSON.

Since: cosmos-sdk 0.47

Body parameter

{
  "amino_binary": "string"
}

Parameters

NameInTypeRequiredDescription
bodybodyobjecttruenone
» amino_binarybodystring(byte)falsenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*TxDecodeAminoResponse is the response type for the Service.TxDecodeAmino RPC method.

Since: cosmos-sdk 0.47*

NameTypeRequiredRestrictionsDescription
» amino_jsonstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

TxEncode

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/cosmos/tx/v1beta1/encode', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/encode',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /cosmos/tx/v1beta1/encode

TxEncode encodes the transaction.

Since: cosmos-sdk 0.47

Body parameter

{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  }
}

Parameters

NameInTypeRequiredDescription
bodybodycosmos.tx.v1beta1.TxEncodeRequesttruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*TxEncodeResponse is the response type for the Service.TxEncode method.

Since: cosmos-sdk 0.47*

NameTypeRequiredRestrictionsDescription
» tx_bytesstring(byte)falsenonetx_bytes is the encoded transaction bytes.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

TxEncodeAmino

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/cosmos/tx/v1beta1/encode/amino', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "amino_json": "string"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/encode/amino',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /cosmos/tx/v1beta1/encode/amino

TxEncodeAmino encodes an Amino transaction from JSON to encoded bytes.

Since: cosmos-sdk 0.47

Body parameter

{
  "amino_json": "string"
}

Parameters

NameInTypeRequiredDescription
bodybodyobjecttruenone
» amino_jsonbodystringfalsenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*TxEncodeAminoResponse is the response type for the Service.TxEncodeAmino RPC method.

Since: cosmos-sdk 0.47*

NameTypeRequiredRestrictionsDescription
» amino_binarystring(byte)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Simulate

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/cosmos/tx/v1beta1/simulate', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  },
  "tx_bytes": "string"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/simulate',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /cosmos/tx/v1beta1/simulate

Simulate simulates executing a transaction for estimating gas usage.

Body parameter

{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  },
  "tx_bytes": "string"
}

Parameters

NameInTypeRequiredDescription
bodybodycosmos.tx.v1beta1.SimulateRequesttruenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

SimulateResponse is the response type for the Service.SimulateRPC method.

NameTypeRequiredRestrictionsDescription
» gas_infoobjectfalsenonegas_info is the information about gas used in the simulation.
»» gas_wantedstring(uint64)falsenoneGasWanted is the maximum units of work we allow this tx to perform.
»» gas_usedstring(uint64)falsenoneGasUsed is the amount of gas actually consumed.
» resultobjectfalsenoneresult is the result of the simulation.
»» datastring(byte)falsenoneData is any data returned from message or handler execution. It MUST belength prefixed in order to separate data from multiple message executions.Deprecated. This field is still populated, but prefer msg_response insteadbecause it also contains the Msg response typeURL.
»» logstringfalsenoneLog contains the log information from message or handler execution.
»» events[object]falsenoneEvents contains a slice of Event objects that were emitted during messageor handler execution.
»»» typestringfalsenonenone
»»» attributes[object]falsenonenone
»»»» keystringfalsenonenone
»»»» valuestringfalsenonenone
»»»» indexbooleanfalsenonenone
»» msg_responses[object]falsenonemsg_responses contains the Msg handler responses type packed in Anys.Since: cosmos-sdk 0.46
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetTxsEvent

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/tx/v1beta1/txs', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/txs',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/tx/v1beta1/txs

GetTxsEvent fetches txs by event.

Parameters

NameInTypeRequiredDescription
eventsqueryarray[string]falseevents is the list of transaction event type.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.
order_byquerystringfalse- ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults
pagequerystring(uint64)falsepage is the page number to query, starts at 1. If not provided, will
limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
queryquerystringfalsequery defines the transaction event query that is proxied to Tendermint's

Detailed descriptions

events: events is the list of transaction event type. Deprecated post v0.47.x: use query instead, which should contain a valid events query.

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

order_by: - ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults to ASC in this case.

  • ORDER_BY_ASC: ORDER_BY_ASC defines ascending order
  • ORDER_BY_DESC: ORDER_BY_DESC defines descending order

page: page is the page number to query, starts at 1. If not provided, will default to first page.

limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

query: query defines the transaction event query that is proxied to Tendermint's TxSearch RPC method. The query must be valid.

Since cosmos-sdk 0.50

Enumerated Values

ParameterValue
order_byORDER_BY_UNSPECIFIED
order_byORDER_BY_ASC
order_byORDER_BY_DESC

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.cosmos.tx.v1beta1.GetTxsEventResponse
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

BroadcastTx

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*'
}
 
r = requests.post('/cosmos/tx/v1beta1/txs', headers = headers)
 
print(r.json())
 
const inputBody = '{
  "tx_bytes": "string",
  "mode": "BROADCAST_MODE_UNSPECIFIED"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/txs',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

POST /cosmos/tx/v1beta1/txs

BroadcastTx broadcast transaction.

Body parameter

{
  "tx_bytes": "string",
  "mode": "BROADCAST_MODE_UNSPECIFIED"
}

Parameters

NameInTypeRequiredDescription
bodybodyobjecttruenone
» tx_bytesbodystring(byte)falsetx_bytes is the raw transaction.
» modebodystringfalseBroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC

Detailed descriptions

» mode: BroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC method.

  • BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering
  • BROADCAST_MODE_BLOCK: DEPRECATED: use BROADCAST_MODE_SYNC instead, BROADCAST_MODE_BLOCK is not supported by the SDK from v0.47.x onwards.
  • BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for a CheckTx execution response only.
  • BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns immediately.

Enumerated Values

ParameterValue
» modeBROADCAST_MODE_UNSPECIFIED
» modeBROADCAST_MODE_BLOCK
» modeBROADCAST_MODE_SYNC
» modeBROADCAST_MODE_ASYNC

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

BroadcastTxResponse is the response type for the Service.BroadcastTx method.

NameTypeRequiredRestrictionsDescription
» tx_responseobjectfalsenoneTxResponse defines a structure containing relevant tx data and metadata. Thetags are stringified and the log is JSON decoded.
»» heightstring(int64)falsenonenone
»» txhashstringfalsenoneThe transaction hash.
»» codespacestringfalsenonenone
»» codeinteger(int64)falsenoneResponse code.
»» datastringfalsenoneResult bytes, if any.
»» raw_logstringfalsenoneThe output of the application's logger (raw string). May benon-deterministic.
»» logs[object]falsenoneThe output of the application's logger (typed). May be non-deterministic.
»»» msg_indexinteger(int64)falsenonenone
»»» logstringfalsenonenone
»»» events[object]falsenoneEvents contains a slice of Event objects that were emitted during someexecution.
»»»» typestringfalsenonenone
»»»» attributes[object]falsenonenone
»»»»» keystringfalsenonenone
»»»»» valuestringfalsenonenone
»» infostringfalsenoneAdditional information. May be non-deterministic.
»» gas_wantedstring(int64)falsenoneAmount of gas requested for transaction.
»» gas_usedstring(int64)falsenoneAmount of gas consumed by transaction.
»» txobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» timestampstringfalsenoneTime of the previous block. For heights > 1, it's the weighted median ofthe timestamps of the valid votes in the block.LastCommit. For height == 1,it's genesis time.
»» events[object]falsenoneEvents defines all the events emitted by processing a transaction. Note,these events include those emitted by processing all the messages and thoseemitted from the ante. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
»»» typestringfalsenonenone
»»» attributes[object]falsenonenone
»»»» keystringfalsenonenone
»»»» valuestringfalsenonenone
»»»» indexbooleanfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetBlockWithTxs

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/tx/v1beta1/txs/block/{height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/txs/block/{height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/tx/v1beta1/txs/block/{height}

GetBlockWithTxs fetches a block with decoded txs.

Since: cosmos-sdk 0.45.2

Parameters

NameInTypeRequiredDescription
heightpathstring(int64)trueheight is the height of the block to query.
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.cosmos.tx.v1beta1.GetBlockWithTxsResponse
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetTx

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/tx/v1beta1/txs/{hash}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/tx/v1beta1/txs/{hash}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/tx/v1beta1/txs/{hash}

GetTx fetches a tx by hash.

Parameters

NameInTypeRequiredDescription
hashpathstringtruehash is the tx hash to query, encoded as a hex string.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.cosmos.tx.v1beta1.GetTxResponse
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ABCIQuery

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/base/tendermint/v1beta1/abci_query', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/base/tendermint/v1beta1/abci_query',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/base/tendermint/v1beta1/abci_query

ABCIQuery defines a query handler that supports ABCI queries directly to the application, bypassing Tendermint completely. The ABCI query must contain a valid and supported path, including app, custom, p2p, and store.

Since: cosmos-sdk 0.46

Parameters

NameInTypeRequiredDescription
dataquerystring(byte)falsenone
pathquerystringfalsenone
heightquerystring(int64)falsenone
provequerybooleanfalsenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

*ABCIQueryResponse defines the response structure for the ABCIQuery gRPC query.

Note: This type is a duplicate of the ResponseQuery proto type defined in Tendermint.*

NameTypeRequiredRestrictionsDescription
» codeinteger(int64)falsenonenone
» logstringfalsenonenone
» infostringfalsenonenone
» indexstring(int64)falsenonenone
» keystring(byte)falsenonenone
» valuestring(byte)falsenonenone
» proof_opsobjectfalsenoneProofOps is Merkle proof defined by the list of ProofOps.Note: This type is a duplicate of the ProofOps proto type defined in Tendermint.
»» ops[object]falsenonenone
»»» typestringfalsenonenone
»»» keystring(byte)falsenonenone
»»» datastring(byte)falsenonenone
» heightstring(int64)falsenonenone
» codespacestringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetLatestBlock

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/base/tendermint/v1beta1/blocks/latest', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/base/tendermint/v1beta1/blocks/latest',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/base/tendermint/v1beta1/blocks/latest

GetLatestBlock returns the latest block.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

GetLatestBlockResponse is the response type for the Query/GetLatestBlock RPC method.

NameTypeRequiredRestrictionsDescription
» block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» blockobjectfalsenonenone
»» headerobjectfalsenoneHeader defines the structure of a block header.
»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»» blockstring(uint64)falsenonenone
»»»» appstring(uint64)falsenonenone
»»» chain_idstringfalsenonenone
»»» heightstring(int64)falsenonenone
»»» timestring(date-time)falsenonenone
»»» last_block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» last_commit_hashstring(byte)falsenonenone
»»» data_hashstring(byte)falsenonenone
»»» validators_hashstring(byte)falsenonenone
»»» next_validators_hashstring(byte)falsenonenone
»»» consensus_hashstring(byte)falsenonenone
»»» app_hashstring(byte)falsenonenone
»»» last_results_hashstring(byte)falsenonenone
»»» evidence_hashstring(byte)falsenonenone
»»» proposer_addressstring(byte)falsenonenone
»» dataobjectfalsenonenone
»»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
»» evidenceobjectfalsenonenone
»»» evidence[object]falsenonenone
»»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» validator_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»»» conflicting_blockobjectfalsenonenone
»»»»»» signed_headerobjectfalsenonenone
»»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»»» appstring(uint64)falsenonenone
»»»»»»»» chain_idstringfalsenonenone
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» timestring(date-time)falsenonenone
»»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» roundinteger(int32)falsenonenone
»»»»»»»» block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» signatures[object]falsenonenone
»»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»»» signaturestring(byte)falsenonenone
»»»»»» validator_setobjectfalsenonenone
»»»»»»» validators[object]falsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» proposerobjectfalsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» common_heightstring(int64)falsenonenone
»»»»» byzantine_validators[object]falsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»» heightstring(int64)falsenonenone
»»» roundinteger(int32)falsenonenone
»»» block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» signatures[object]falsenonenone
»»»» block_id_flagstringfalsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» signaturestring(byte)falsenonenone
» sdk_blockobjectfalsenoneBlock is tendermint type Block, with the Header proposer addressfield converted to bech32 string.
»» headerobjectfalsenoneHeader defines the structure of a Tendermint block header.
»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»» blockstring(uint64)falsenonenone
»»»» appstring(uint64)falsenonenone
»»» chain_idstringfalsenonenone
»»» heightstring(int64)falsenonenone
»»» timestring(date-time)falsenonenone
»»» last_block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» last_commit_hashstring(byte)falsenonenone
»»» data_hashstring(byte)falsenonenone
»»» validators_hashstring(byte)falsenonenone
»»» next_validators_hashstring(byte)falsenonenone
»»» consensus_hashstring(byte)falsenonenone
»»» app_hashstring(byte)falsenonenone
»»» last_results_hashstring(byte)falsenonenone
»»» evidence_hashstring(byte)falsenonenone
»»» proposer_addressstringfalsenoneproposer_address is the original block proposer address, formatted as a Bech32 string.In Tendermint, this type is bytes, but in the SDK, we convert it to a Bech32 stringfor better UX.
»» dataobjectfalsenonenone
»»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
»» evidenceobjectfalsenonenone
»»» evidence[object]falsenonenone
»»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» validator_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»»» conflicting_blockobjectfalsenonenone
»»»»»» signed_headerobjectfalsenonenone
»»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»»» appstring(uint64)falsenonenone
»»»»»»»» chain_idstringfalsenonenone
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» timestring(date-time)falsenonenone
»»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» roundinteger(int32)falsenonenone
»»»»»»»» block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» signatures[object]falsenonenone
»»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»»» signaturestring(byte)falsenonenone
»»»»»» validator_setobjectfalsenonenone
»»»»»»» validators[object]falsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» proposerobjectfalsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» common_heightstring(int64)falsenonenone
»»»»» byzantine_validators[object]falsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»» heightstring(int64)falsenonenone
»»» roundinteger(int32)falsenonenone
»»» block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» signatures[object]falsenonenone
»»»» block_id_flagstringfalsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetBlockByHeight

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/base/tendermint/v1beta1/blocks/{height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/base/tendermint/v1beta1/blocks/{height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/base/tendermint/v1beta1/blocks/{height}

GetBlockByHeight queries block for given height.

Parameters

NameInTypeRequiredDescription
heightpathstring(int64)truenone

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

GetBlockByHeightResponse is the response type for the Query/GetBlockByHeight RPC method.

NameTypeRequiredRestrictionsDescription
» block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» blockobjectfalsenonenone
»» headerobjectfalsenoneHeader defines the structure of a block header.
»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»» blockstring(uint64)falsenonenone
»»»» appstring(uint64)falsenonenone
»»» chain_idstringfalsenonenone
»»» heightstring(int64)falsenonenone
»»» timestring(date-time)falsenonenone
»»» last_block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» last_commit_hashstring(byte)falsenonenone
»»» data_hashstring(byte)falsenonenone
»»» validators_hashstring(byte)falsenonenone
»»» next_validators_hashstring(byte)falsenonenone
»»» consensus_hashstring(byte)falsenonenone
»»» app_hashstring(byte)falsenonenone
»»» last_results_hashstring(byte)falsenonenone
»»» evidence_hashstring(byte)falsenonenone
»»» proposer_addressstring(byte)falsenonenone
»» dataobjectfalsenonenone
»»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
»» evidenceobjectfalsenonenone
»»» evidence[object]falsenonenone
»»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» validator_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»»» conflicting_blockobjectfalsenonenone
»»»»»» signed_headerobjectfalsenonenone
»»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»»» appstring(uint64)falsenonenone
»»»»»»»» chain_idstringfalsenonenone
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» timestring(date-time)falsenonenone
»»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» roundinteger(int32)falsenonenone
»»»»»»»» block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» signatures[object]falsenonenone
»»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»»» signaturestring(byte)falsenonenone
»»»»»» validator_setobjectfalsenonenone
»»»»»»» validators[object]falsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» proposerobjectfalsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» common_heightstring(int64)falsenonenone
»»»»» byzantine_validators[object]falsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»» heightstring(int64)falsenonenone
»»» roundinteger(int32)falsenonenone
»»» block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» signatures[object]falsenonenone
»»»» block_id_flagstringfalsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» signaturestring(byte)falsenonenone
» sdk_blockobjectfalsenoneBlock is tendermint type Block, with the Header proposer addressfield converted to bech32 string.
»» headerobjectfalsenoneHeader defines the structure of a Tendermint block header.
»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»» blockstring(uint64)falsenonenone
»»»» appstring(uint64)falsenonenone
»»» chain_idstringfalsenonenone
»»» heightstring(int64)falsenonenone
»»» timestring(date-time)falsenonenone
»»» last_block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» last_commit_hashstring(byte)falsenonenone
»»» data_hashstring(byte)falsenonenone
»»» validators_hashstring(byte)falsenonenone
»»» next_validators_hashstring(byte)falsenonenone
»»» consensus_hashstring(byte)falsenonenone
»»» app_hashstring(byte)falsenonenone
»»» last_results_hashstring(byte)falsenonenone
»»» evidence_hashstring(byte)falsenonenone
»»» proposer_addressstringfalsenoneproposer_address is the original block proposer address, formatted as a Bech32 string.In Tendermint, this type is bytes, but in the SDK, we convert it to a Bech32 stringfor better UX.
»» dataobjectfalsenonenone
»»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
»» evidenceobjectfalsenonenone
»»» evidence[object]falsenonenone
»»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» validator_indexinteger(int32)falsenonenone
»»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» validator_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»»» conflicting_blockobjectfalsenonenone
»»»»»» signed_headerobjectfalsenonenone
»»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»»» appstring(uint64)falsenonenone
»»»»»»»» chain_idstringfalsenonenone
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» timestring(date-time)falsenonenone
»»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»»» heightstring(int64)falsenonenone
»»»»»»»» roundinteger(int32)falsenonenone
»»»»»»»» block_idobjectfalsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» signatures[object]falsenonenone
»»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»»» signaturestring(byte)falsenonenone
»»»»»» validator_setobjectfalsenonenone
»»»»»»» validators[object]falsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» proposerobjectfalsenonenone
»»»»»»»» addressstring(byte)falsenonenone
»»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» common_heightstring(int64)falsenonenone
»»»»» byzantine_validators[object]falsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» total_voting_powerstring(int64)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»» heightstring(int64)falsenonenone
»»» roundinteger(int32)falsenonenone
»»» block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» signatures[object]falsenonenone
»»»» block_id_flagstringfalsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetNodeInfo

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/base/tendermint/v1beta1/node_info', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/base/tendermint/v1beta1/node_info',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/base/tendermint/v1beta1/node_info

GetNodeInfo queries the current node info.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

GetNodeInfoResponse is the response type for the Query/GetNodeInfo RPC method.

NameTypeRequiredRestrictionsDescription
» default_node_infoobjectfalsenonenone
»» protocol_versionobjectfalsenonenone
»»» p2pstring(uint64)falsenonenone
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» default_node_idstringfalsenonenone
»» listen_addrstringfalsenonenone
»» networkstringfalsenonenone
»» versionstringfalsenonenone
»» channelsstring(byte)falsenonenone
»» monikerstringfalsenonenone
»» otherobjectfalsenonenone
»»» tx_indexstringfalsenonenone
»»» rpc_addressstringfalsenonenone
» application_versionobjectfalsenoneVersionInfo is the type for the GetNodeInfoResponse message.
»» namestringfalsenonenone
»» app_namestringfalsenonenone
»» versionstringfalsenonenone
»» git_commitstringfalsenonenone
»» build_tagsstringfalsenonenone
»» go_versionstringfalsenonenone
»» build_deps[object]falsenonenone
»»» Module is the type for VersionInfoobjectfalsenonenone
»»»» pathstringfalsenonenone
»»»» versionstringfalsenonenone
»»»» sumstringfalsenonenone
»» cosmos_sdk_versionstringfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetSyncing

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/base/tendermint/v1beta1/syncing', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/base/tendermint/v1beta1/syncing',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/base/tendermint/v1beta1/syncing

GetSyncing queries node syncing.

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

GetSyncingResponse is the response type for the Query/GetSyncing RPC method.

NameTypeRequiredRestrictionsDescription
» syncingbooleanfalsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetLatestValidatorSet

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/base/tendermint/v1beta1/validatorsets/latest', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/base/tendermint/v1beta1/validatorsets/latest',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/base/tendermint/v1beta1/validatorsets/latest

GetLatestValidatorSet queries latest validator-set.

Parameters

NameInTypeRequiredDescription
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

GetLatestValidatorSetResponse is the response type for the Query/GetValidatorSetByHeight RPC method.

NameTypeRequiredRestrictionsDescription
» block_heightstring(int64)falsenonenone
» validators[object]falsenonenone
»» addressstringfalsenonenone
»» pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» voting_powerstring(int64)falsenonenone
»» proposer_prioritystring(int64)falsenonenone
» paginationobjectfalsenonepagination defines an pagination for the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

GetValidatorSetByHeight

Code samples

import requests
headers = {
  'Accept': '*/*'
}
 
r = requests.get('/cosmos/base/tendermint/v1beta1/validatorsets/{height}', headers = headers)
 
print(r.json())
 
 
const headers = {
  'Accept':'*/*'
};
 
fetch('/cosmos/base/tendermint/v1beta1/validatorsets/{height}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 

GET /cosmos/base/tendermint/v1beta1/validatorsets/{height}

GetValidatorSetByHeight queries validator-set at a given height.

Parameters

NameInTypeRequiredDescription
heightpathstring(int64)truenone
pagination.keyquerystring(byte)falsekey is a value returned in PageResponse.next_key to begin
pagination.offsetquerystring(uint64)falseoffset is a numeric offset that can be used when key is unavailable.
pagination.limitquerystring(uint64)falselimit is the total number of results to be returned in the result page.
pagination.count_totalquerybooleanfalsecount_total is set to true to indicate that the result set should include
pagination.reversequerybooleanfalsereverse is set to true if results are to be returned in the descending order.

Detailed descriptions

pagination.key: key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set.

pagination.offset: offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set.

pagination.limit: limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app.

pagination.count_total: count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set.

pagination.reverse: reverse is set to true if results are to be returned in the descending order.

Since: cosmos-sdk 0.43

Example responses

200 Response

Responses

StatusMeaningDescriptionSchema
200OK (opens in a new tab)A successful response.Inline
defaultDefaultAn unexpected error response.Inline

Response Schema

Status Code 200

GetValidatorSetByHeightResponse is the response type for the Query/GetValidatorSetByHeight RPC method.

NameTypeRequiredRestrictionsDescription
» block_heightstring(int64)falsenonenone
» validators[object]falsenonenone
»» addressstringfalsenonenone
»» pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» voting_powerstring(int64)falsenonenone
»» proposer_prioritystring(int64)falsenonenone
» paginationobjectfalsenonepagination defines an pagination for the response.
»» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
»» totalstring(uint64)falsenonenone

Status Code default

NameTypeRequiredRestrictionsDescription
» errorstringfalsenonenone
» codeinteger(int32)falsenonenone
» messagestringfalsenonenone
» details[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

Schemas

cosmos.base.query.v1beta1.PageRequest

{
  "key": "string",
  "offset": "string",
  "limit": "string",
  "count_total": true,
  "reverse": true
}
 

PageRequest is to be embedded in gRPC request messages for efficient pagination. Ex:

Properties

NameTypeRequiredRestrictionsDescription
keystring(byte)falsenonekey is a value returned in PageResponse.next_key to beginquerying the next page most efficiently. Only one of offset or keyshould be set.
offsetstring(uint64)falsenoneoffset is a numeric offset that can be used when key is unavailable.It is less efficient than using key. Only one of offset or key shouldbe set.
limitstring(uint64)falsenonelimit is the total number of results to be returned in the result page.If left empty it will default to a value to be set by each app.
count_totalbooleanfalsenonecount_total is set to true to indicate that the result set should includea count of the total number of items available for pagination in UIs.count_total is only respected when offset is used. It is ignored when keyis set.
reversebooleanfalsenonereverse is set to true if results are to be returned in the descending order.Since: cosmos-sdk 0.43

cosmos.base.query.v1beta1.PageResponse

{
  "next_key": "string",
  "total": "string"
}
 

PageResponse is to be embedded in gRPC response messages where the corresponding request message has used PageRequest.

message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }

Properties

NameTypeRequiredRestrictionsDescription
next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
totalstring(uint64)falsenonenone

dydxprotocol.assets.Asset

{
  "id": 0,
  "symbol": "string",
  "denom": "string",
  "denom_exponent": 0,
  "has_market": true,
  "market_id": 0,
  "atomic_resolution": 0
}
 

Asset defines a single exchangable asset.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneUnique, sequentially-generated.
symbolstringfalsenoneThe human readable symbol of the Asset (e.g. USDC, ATOM).Must be uppercase, unique and correspond to the canonical symbol of thefull coin.
denomstringfalsenoneThe name of base denomination unit of the Asset (e.g. uatom,'ibc/xxxxx'). Must be unique and match the denom used in the sdk.Cointype in the x/bank module.
denom_exponentinteger(int32)falsenonenone
has_marketbooleanfalsenonetrue if this Asset has a valid MarketId value.
market_idinteger(int64)falsenoneThe Id of the Market associated with this Asset. It acts as theoracle price for the purposes of calculating collateraland margin requirements.
atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (1 'quantum')to a full coin. For example, if atomic_resolution = -8then an asset_position with base_quantums = 1e8 is equivalent toa position size of one full coin.

dydxprotocol.assets.QueryAllAssetsResponse

{
  "asset": [
    {
      "id": 0,
      "symbol": "string",
      "denom": "string",
      "denom_exponent": 0,
      "has_market": true,
      "market_id": 0,
      "atomic_resolution": 0
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllAssetsResponse is response type for the AllAssets RPC method.

Properties

NameTypeRequiredRestrictionsDescription
asset[object]falsenonenone
» idinteger(int64)falsenoneUnique, sequentially-generated.
» symbolstringfalsenoneThe human readable symbol of the Asset (e.g. USDC, ATOM).Must be uppercase, unique and correspond to the canonical symbol of thefull coin.
» denomstringfalsenoneThe name of base denomination unit of the Asset (e.g. uatom,'ibc/xxxxx'). Must be unique and match the denom used in the sdk.Cointype in the x/bank module.
» denom_exponentinteger(int32)falsenonenone
» has_marketbooleanfalsenonetrue if this Asset has a valid MarketId value.
» market_idinteger(int64)falsenoneThe Id of the Market associated with this Asset. It acts as theoracle price for the purposes of calculating collateraland margin requirements.
» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (1 'quantum')to a full coin. For example, if atomic_resolution = -8then an asset_position with base_quantums = 1e8 is equivalent toa position size of one full coin.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

dydxprotocol.assets.QueryAssetResponse

{
  "asset": {
    "id": 0,
    "symbol": "string",
    "denom": "string",
    "denom_exponent": 0,
    "has_market": true,
    "market_id": 0,
    "atomic_resolution": 0
  }
}
 

QueryAssetResponse is response type for the Asset RPC method.

Properties

NameTypeRequiredRestrictionsDescription
assetobjectfalsenoneAsset defines a single exchangable asset.
» idinteger(int64)falsenoneUnique, sequentially-generated.
» symbolstringfalsenoneThe human readable symbol of the Asset (e.g. USDC, ATOM).Must be uppercase, unique and correspond to the canonical symbol of thefull coin.
» denomstringfalsenoneThe name of base denomination unit of the Asset (e.g. uatom,'ibc/xxxxx'). Must be unique and match the denom used in the sdk.Cointype in the x/bank module.
» denom_exponentinteger(int32)falsenonenone
» has_marketbooleanfalsenonetrue if this Asset has a valid MarketId value.
» market_idinteger(int64)falsenoneThe Id of the Market associated with this Asset. It acts as theoracle price for the purposes of calculating collateraland margin requirements.
» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (1 'quantum')to a full coin. For example, if atomic_resolution = -8then an asset_position with base_quantums = 1e8 is equivalent toa position size of one full coin.

google.protobuf.Any

{
  "type_url": "string",
  "value": "string"
}
 

Any contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.

Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type.

Example 1: Pack and unpack a message in C++.

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

Example 2: Pack and unpack a message in Java.

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}

Example 3: Pack and unpack a message in Python.

foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...

Example 4: Pack and unpack a message in Go

 foo := &pb.Foo{...}
 any, err := anypb.New(foo)
 if err != nil {
   ...
 }
 ...
 foo := &pb.Foo{}
 if err := any.UnmarshalTo(foo); err != nil {
   ...
 }

The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z".

JSON

The JSON representation of an Any value uses the regular representation of the deserialized, embedded message, with an additional field @type which contains the type URL. Example:

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}

{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field value which holds the custom JSON in addition to the @type field. Example (for message [google.protobuf.Duration][]):

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}

Properties

NameTypeRequiredRestrictionsDescription
type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

grpc.gateway.runtime.Error

{
  "error": "string",
  "code": 0,
  "message": "string",
  "details": [
    {
      "type_url": "string",
      "value": "string"
    }
  ]
}
 

Properties

NameTypeRequiredRestrictionsDescription
errorstringfalsenonenone
codeinteger(int32)falsenonenone
messagestringfalsenonenone
details[object]falsenonenone
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

dydxprotocol.blocktime.AllDowntimeInfo

{
  "infos": [
    {
      "duration": "string",
      "block_info": {
        "height": 0,
        "timestamp": "2019-08-24T14:15:22Z"
      }
    }
  ]
}
 

AllDowntimeInfo stores information for all downtime durations.

Properties

NameTypeRequiredRestrictionsDescription
infos[object]falsenoneThe downtime information for each tracked duration. Sorted by duration,ascending. (i.e. the same order as they appear in DowntimeParams).
» durationstringfalsenonenone
» block_infoobjectfalsenonenone
»» heightinteger(int64)falsenonenone
»» timestampstring(date-time)falsenonenone

dydxprotocol.blocktime.AllDowntimeInfo.DowntimeInfo

{
  "duration": "string",
  "block_info": {
    "height": 0,
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
 

Stores information about downtime. block_info corresponds to the most recent block at which a downtime occurred.

Properties

NameTypeRequiredRestrictionsDescription
durationstringfalsenonenone
block_infoobjectfalsenonenone
» heightinteger(int64)falsenonenone
» timestampstring(date-time)falsenonenone

dydxprotocol.blocktime.BlockInfo

{
  "height": 0,
  "timestamp": "2019-08-24T14:15:22Z"
}
 

BlockInfo stores information about a block

Properties

NameTypeRequiredRestrictionsDescription
heightinteger(int64)falsenonenone
timestampstring(date-time)falsenonenone

dydxprotocol.blocktime.DowntimeParams

{
  "durations": [
    "string"
  ]
}
 

DowntimeParams defines the parameters for downtime.

Properties

NameTypeRequiredRestrictionsDescription
durations[string]falsenoneDurations tracked for downtime. The durations must be sorted fromshortest to longest and must all be positive.

dydxprotocol.blocktime.QueryAllDowntimeInfoResponse

{
  "info": {
    "infos": [
      {
        "duration": "string",
        "block_info": {
          "height": 0,
          "timestamp": "2019-08-24T14:15:22Z"
        }
      }
    ]
  }
}
 

QueryAllDowntimeInfoResponse is a request type for the AllDowntimeInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
infoobjectfalsenoneAllDowntimeInfo stores information for all downtime durations.
» infos[object]falsenoneThe downtime information for each tracked duration. Sorted by duration,ascending. (i.e. the same order as they appear in DowntimeParams).
»» durationstringfalsenonenone
»» block_infoobjectfalsenonenone
»»» heightinteger(int64)falsenonenone
»»» timestampstring(date-time)falsenonenone

dydxprotocol.blocktime.QueryDowntimeParamsResponse

{
  "params": {
    "durations": [
      "string"
    ]
  }
}
 

QueryDowntimeParamsResponse is a response type for the DowntimeParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneDowntimeParams defines the parameters for downtime.
» durations[string]falsenoneDurations tracked for downtime. The durations must be sorted fromshortest to longest and must all be positive.

dydxprotocol.blocktime.QueryPreviousBlockInfoResponse

{
  "info": {
    "height": 0,
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
 

QueryPreviousBlockInfoResponse is a request type for the PreviousBlockInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
infoobjectfalsenonenone
» heightinteger(int64)falsenonenone
» timestampstring(date-time)falsenonenone

cosmos.base.v1beta1.Coin

{
  "denom": "string",
  "amount": "string"
}
 

Coin defines a token with a denomination and an amount.

NOTE: The amount field is an Int which implements the custom method signatures required by gogoproto.

Properties

NameTypeRequiredRestrictionsDescription
denomstringfalsenonenone
amountstringfalsenonenone

dydxprotocol.bridge.BridgeEvent

{
  "id": 0,
  "coin": {
    "denom": "string",
    "amount": "string"
  },
  "address": "string",
  "eth_block_height": "string"
}
 

BridgeEvent is a recognized event from the Ethereum blockchain.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneThe unique id of the Ethereum event log.
coinobjectfalsenoneThe tokens bridged.
» denomstringfalsenonenone
» amountstringfalsenonenone
addressstringfalsenoneThe account address or module address to bridge to.
eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the event.

dydxprotocol.bridge.BridgeEventInfo

{
  "next_id": 0,
  "eth_block_height": "string"
}
 

BridgeEventInfo stores information about the most recently processed bridge event.

Properties

NameTypeRequiredRestrictionsDescription
next_idinteger(int64)falsenoneThe next event id (the last processed id plus one) of the logs from theEthereum contract.
eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the most recently processed bridge event.

dydxprotocol.bridge.DelayedCompleteBridgeMessage

{
  "message": {
    "authority": "string",
    "event": {
      "id": 0,
      "coin": {
        "denom": "string",
        "amount": "string"
      },
      "address": "string",
      "eth_block_height": "string"
    }
  },
  "block_height": 0
}
 

DelayedCompleteBridgeMessage is a message type for the response of DelayedCompleteBridgeMessages RPC method. It contains the message and the block height at which it will execute.

Properties

NameTypeRequiredRestrictionsDescription
messageobjectfalsenoneMsgCompleteBridge is the Msg/CompleteBridgeResponse request type.
» authoritystringfalsenonenone
» eventobjectfalsenoneThe event to complete.
»» idinteger(int64)falsenoneThe unique id of the Ethereum event log.
»» coinobjectfalsenoneThe tokens bridged.
»»» denomstringfalsenonenone
»»» amountstringfalsenonenone
»» addressstringfalsenoneThe account address or module address to bridge to.
»» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the event.
block_heightinteger(int64)falsenonenone

dydxprotocol.bridge.EventParams

{
  "denom": "string",
  "eth_chain_id": "string",
  "eth_address": "string"
}
 

EventParams stores parameters about which events to recognize and which tokens to mint.

Properties

NameTypeRequiredRestrictionsDescription
denomstringfalsenoneThe denom of the token to mint.
eth_chain_idstring(uint64)falsenoneThe numerical chain ID of the Ethereum chain to query.
eth_addressstringfalsenoneThe address of the Ethereum contract to monitor for logs.

dydxprotocol.bridge.MsgCompleteBridge

{
  "authority": "string",
  "event": {
    "id": 0,
    "coin": {
      "denom": "string",
      "amount": "string"
    },
    "address": "string",
    "eth_block_height": "string"
  }
}
 

MsgCompleteBridge is the Msg/CompleteBridgeResponse request type.

Properties

NameTypeRequiredRestrictionsDescription
authoritystringfalsenonenone
eventobjectfalsenoneThe event to complete.
» idinteger(int64)falsenoneThe unique id of the Ethereum event log.
» coinobjectfalsenoneThe tokens bridged.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» addressstringfalsenoneThe account address or module address to bridge to.
» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the event.

dydxprotocol.bridge.ProposeParams

{
  "max_bridges_per_block": 0,
  "propose_delay_duration": "string",
  "skip_rate_ppm": 0,
  "skip_if_block_delayed_by_duration": "string"
}
 

ProposeParams stores parameters for proposing to the module.

Properties

NameTypeRequiredRestrictionsDescription
max_bridges_per_blockinteger(int64)falsenoneThe maximum number of bridge events to propose per block.Limits the number of events to propose in a single blockin-order to smooth out the flow of events.
propose_delay_durationstringfalsenoneThe minimum duration to wait between a finalized bridge andproposing it. This allows other validators to have enough time toalso recognize its occurence. Therefore the bridge daemon shouldpool for new finalized events at least as often as this parameter.
skip_rate_ppminteger(int64)falsenoneDo not propose any events if a [0, 1_000_000) random number generatorgenerates a number smaller than this number.Setting this parameter to 1_000_000 means always skipping proposing events.
skip_if_block_delayed_by_durationstringfalsenoneDo not propose any events if the timestamp of the proposal block isbehind the proposers' wall-clock by at least this duration.

dydxprotocol.bridge.QueryAcknowledgedEventInfoResponse

{
  "info": {
    "next_id": 0,
    "eth_block_height": "string"
  }
}
 

QueryAcknowledgedEventInfoResponse is a response type for the AcknowledgedEventInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
infoobjectfalsenoneBridgeEventInfo stores information about the most recently processed bridgeevent.
» next_idinteger(int64)falsenoneThe next event id (the last processed id plus one) of the logs from theEthereum contract.
» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the most recently processed bridge event.

dydxprotocol.bridge.QueryDelayedCompleteBridgeMessagesResponse

{
  "messages": [
    {
      "message": {
        "authority": "string",
        "event": {
          "id": 0,
          "coin": {},
          "address": "string",
          "eth_block_height": "string"
        }
      },
      "block_height": 0
    }
  ]
}
 

QueryDelayedCompleteBridgeMessagesResponse is a response type for the DelayedCompleteBridgeMessages RPC method.

Properties

NameTypeRequiredRestrictionsDescription
messages[object]falsenonenone
» messageobjectfalsenoneMsgCompleteBridge is the Msg/CompleteBridgeResponse request type.
»» authoritystringfalsenonenone
»» eventobjectfalsenoneThe event to complete.
»»» idinteger(int64)falsenoneThe unique id of the Ethereum event log.
»»» coinobjectfalsenoneThe tokens bridged.
»»»» denomstringfalsenonenone
»»»» amountstringfalsenonenone
»»» addressstringfalsenoneThe account address or module address to bridge to.
»»» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the event.
» block_heightinteger(int64)falsenonenone

dydxprotocol.bridge.QueryEventParamsResponse

{
  "params": {
    "denom": "string",
    "eth_chain_id": "string",
    "eth_address": "string"
  }
}
 

QueryEventParamsResponse is a response type for the EventParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneEventParams stores parameters about which events to recognize and whichtokens to mint.
» denomstringfalsenoneThe denom of the token to mint.
» eth_chain_idstring(uint64)falsenoneThe numerical chain ID of the Ethereum chain to query.
» eth_addressstringfalsenoneThe address of the Ethereum contract to monitor for logs.

dydxprotocol.bridge.QueryProposeParamsResponse

{
  "params": {
    "max_bridges_per_block": 0,
    "propose_delay_duration": "string",
    "skip_rate_ppm": 0,
    "skip_if_block_delayed_by_duration": "string"
  }
}
 

QueryProposeParamsResponse is a response type for the ProposeParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneProposeParams stores parameters for proposing to the module.
» max_bridges_per_blockinteger(int64)falsenoneThe maximum number of bridge events to propose per block.Limits the number of events to propose in a single blockin-order to smooth out the flow of events.
» propose_delay_durationstringfalsenoneThe minimum duration to wait between a finalized bridge andproposing it. This allows other validators to have enough time toalso recognize its occurence. Therefore the bridge daemon shouldpool for new finalized events at least as often as this parameter.
» skip_rate_ppminteger(int64)falsenoneDo not propose any events if a [0, 1_000_000) random number generatorgenerates a number smaller than this number.Setting this parameter to 1_000_000 means always skipping proposing events.
» skip_if_block_delayed_by_durationstringfalsenoneDo not propose any events if the timestamp of the proposal block isbehind the proposers' wall-clock by at least this duration.

dydxprotocol.bridge.QueryRecognizedEventInfoResponse

{
  "info": {
    "next_id": 0,
    "eth_block_height": "string"
  }
}
 

QueryRecognizedEventInfoResponse is a response type for the RecognizedEventInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
infoobjectfalsenoneBridgeEventInfo stores information about the most recently processed bridgeevent.
» next_idinteger(int64)falsenoneThe next event id (the last processed id plus one) of the logs from theEthereum contract.
» eth_block_heightstring(uint64)falsenoneThe Ethereum block height of the most recently processed bridge event.

dydxprotocol.bridge.QuerySafetyParamsResponse

{
  "params": {
    "is_disabled": true,
    "delay_blocks": 0
  }
}
 

QuerySafetyParamsResponse is a response type for the SafetyParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneSafetyParams stores safety parameters for the module.
» is_disabledbooleanfalsenoneTrue if bridging is disabled.
» delay_blocksinteger(int64)falsenoneThe number of blocks that bridges accepted in-consensus will be pendinguntil the minted tokens are granted.

dydxprotocol.bridge.SafetyParams

{
  "is_disabled": true,
  "delay_blocks": 0
}
 

SafetyParams stores safety parameters for the module.

Properties

NameTypeRequiredRestrictionsDescription
is_disabledbooleanfalsenoneTrue if bridging is disabled.
delay_blocksinteger(int64)falsenoneThe number of blocks that bridges accepted in-consensus will be pendinguntil the minted tokens are granted.

dydxprotocol.clob.BlockRateLimitConfiguration

{
  "max_short_term_orders_per_n_blocks": [
    {
      "num_blocks": 0,
      "limit": 0
    }
  ],
  "max_stateful_orders_per_n_blocks": [
    {
      "num_blocks": 0,
      "limit": 0
    }
  ],
  "max_short_term_order_cancellations_per_n_blocks": [
    {
      "num_blocks": 0,
      "limit": 0
    }
  ],
  "max_short_term_orders_and_cancels_per_n_blocks": [
    {
      "num_blocks": 0,
      "limit": 0
    }
  ]
}
 

Defines the block rate limits for CLOB specific operations.

Properties

NameTypeRequiredRestrictionsDescription
max_short_term_orders_per_n_blocks[object]falsenoneHow many short term order attempts (successful and failed) are allowed foran account per N blocks. Note that the rate limits are appliedin an AND fashion such that an order placement must pass all rate limitconfigurations.Specifying 0 values disables this rate limit.Deprecated in favor of max_short_term_orders_and_cancels_per_n_blocksfor v5.x onwards.
» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
max_stateful_orders_per_n_blocks[object]falsenoneHow many stateful order attempts (successful and failed) are allowed foran account per N blocks. Note that the rate limits are appliedin an AND fashion such that an order placement must pass all rate limitconfigurations.Specifying 0 values disables this rate limit.
» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
max_short_term_order_cancellations_per_n_blocks[object]falsenoneHow many short term order cancellation attempts (successful and failed) areallowed for an account per N blocks. Note that the rate limits areapplied in an AND fashion such that an order cancellation must pass allrate limit configurations.Specifying 0 values disables this rate limit.Deprecated in favor of max_short_term_orders_and_cancels_per_n_blocksfor v5.x onwards.
» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
max_short_term_orders_and_cancels_per_n_blocks[object]falsenoneHow many short term order place and cancel attempts (successful and failed)are allowed for an account per N blocks. Note that the rate limits areapplied in an AND fashion such that an order placement must pass all ratelimit configurations.Specifying 0 values disables this rate limit.
» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.

dydxprotocol.clob.ClobMidPrice

{
  "clob_pair": {
    "id": 0,
    "perpetual_clob_metadata": {
      "perpetual_id": 0
    },
    "spot_clob_metadata": {
      "base_asset_id": 0,
      "quote_asset_id": 0
    },
    "step_base_quantums": "string",
    "subticks_per_tick": 0,
    "quantum_conversion_exponent": 0,
    "status": "STATUS_UNSPECIFIED"
  },
  "subticks": "string"
}
 

ClobMidPrice contains the mid price of a CLOB pair, represented by it's ID.

Properties

NameTypeRequiredRestrictionsDescription
clob_pairobjectfalsenoneClobPair represents a single CLOB pair for a given productin state.
» idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
» perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
»» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
» spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
»» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
»» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
» step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
» subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
» quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
» statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.
subticksstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

dydxprotocol.clob.ClobPair

{
  "id": 0,
  "perpetual_clob_metadata": {
    "perpetual_id": 0
  },
  "spot_clob_metadata": {
    "base_asset_id": 0,
    "quote_asset_id": 0
  },
  "step_base_quantums": "string",
  "subticks_per_tick": 0,
  "quantum_conversion_exponent": 0,
  "status": "STATUS_UNSPECIFIED"
}
 

ClobPair represents a single CLOB pair for a given product in state.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

dydxprotocol.clob.ClobPair.Status

"STATUS_UNSPECIFIED"
 

Status of the CLOB.

  • STATUS_UNSPECIFIED: Default value. This value is invalid and unused.
  • STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair.
  • STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized. TODO(DEC-600): update this documentation.
  • STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized. TODO(DEC-600): update this documentation.
  • STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized. TODO(DEC-600): update this documentation.
  • STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair. Clob pairs in this state only accept orders which are both short-term and post-only.
  • STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivated and trading has ceased. All open positions will be closed by the protocol. Open stateful orders will be cancelled. Open short-term orders will be left to expire.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.

Enumerated Values

PropertyValue
anonymousSTATUS_UNSPECIFIED
anonymousSTATUS_ACTIVE
anonymousSTATUS_PAUSED
anonymousSTATUS_CANCEL_ONLY
anonymousSTATUS_POST_ONLY
anonymousSTATUS_INITIALIZING
anonymousSTATUS_FINAL_SETTLEMENT

dydxprotocol.clob.EquityTierLimit

{
  "usd_tnc_required": "string",
  "limit": 0
}
 

Defines an equity tier limit.

Properties

NameTypeRequiredRestrictionsDescription
usd_tnc_requiredstring(byte)falsenoneThe total net collateral in USDC quote quantums of equity required.
limitinteger(int64)falsenoneWhat the limit is for usd_tnc_required.

dydxprotocol.clob.EquityTierLimitConfiguration

{
  "short_term_order_equity_tiers": [
    {
      "usd_tnc_required": "string",
      "limit": 0
    }
  ],
  "stateful_order_equity_tiers": [
    {
      "usd_tnc_required": "string",
      "limit": 0
    }
  ]
}
 

Defines the set of equity tiers to limit how many open orders a subaccount is allowed to have.

Properties

NameTypeRequiredRestrictionsDescription
short_term_order_equity_tiers[object]falsenoneHow many short term stateful orders are allowed per equity tier.Specifying 0 values disables this limit.
» usd_tnc_requiredstring(byte)falsenoneThe total net collateral in USDC quote quantums of equity required.
» limitinteger(int64)falsenoneWhat the limit is for usd_tnc_required.
stateful_order_equity_tiers[object]falsenoneHow many open stateful orders are allowed per equity tier.Specifying 0 values disables this limit.
» usd_tnc_requiredstring(byte)falsenoneThe total net collateral in USDC quote quantums of equity required.
» limitinteger(int64)falsenoneWhat the limit is for usd_tnc_required.

dydxprotocol.clob.FillablePriceConfig

{
  "bankruptcy_adjustment_ppm": 0,
  "spread_to_maintenance_margin_ratio_ppm": 0
}
 

FillablePriceConfig stores all configurable fields related to calculating the fillable price for liquidating a position.

Properties

NameTypeRequiredRestrictionsDescription
bankruptcy_adjustment_ppminteger(int64)falsenoneThe rate at which the Adjusted Bankruptcy Rating increases.
spread_to_maintenance_margin_ratio_ppminteger(int64)falsenoneThe maximum value that the liquidation spread can take, asa ratio against the position's maintenance margin.

dydxprotocol.clob.LiquidationsConfig

{
  "max_liquidation_fee_ppm": 0,
  "position_block_limits": {
    "min_position_notional_liquidated": "string",
    "max_position_portion_liquidated_ppm": 0
  },
  "subaccount_block_limits": {
    "max_notional_liquidated": "string",
    "max_quantums_insurance_lost": "string"
  },
  "fillable_price_config": {
    "bankruptcy_adjustment_ppm": 0,
    "spread_to_maintenance_margin_ratio_ppm": 0
  }
}
 

LiquidationsConfig stores all configurable fields related to liquidations.

Properties

NameTypeRequiredRestrictionsDescription
max_liquidation_fee_ppminteger(int64)falsenoneThe maximum liquidation fee (in parts-per-million). This fee goes100% to the insurance fund.
position_block_limitsobjectfalsenoneLimits around how much of a single position can be liquidatedwithin a single block.
» min_position_notional_liquidatedstring(uint64)falsenoneThe minimum amount of quantums to liquidate for each message (inquote quantums).Overridden by the maximum size of the position.
» max_position_portion_liquidated_ppminteger(int64)falsenoneThe maximum portion of the position liquidated (in parts-per-million). Overridden by min_position_notional_liquidated.
subaccount_block_limitsobjectfalsenoneLimits around how many quote quantums from a single subaccount canbe liquidated within a single block.
» max_notional_liquidatedstring(uint64)falsenoneThe maximum notional amount that a single subaccount can haveliquidated (in quote quantums) per block.
» max_quantums_insurance_loststring(uint64)falsenoneThe maximum insurance-fund payout amount for a given subaccountper block. I.e. how much it can cover for that subaccount.
fillable_price_configobjectfalsenoneConfig about how the fillable-price spread from the oracle priceincreases based on the adjusted bankruptcy rating of the subaccount.
» bankruptcy_adjustment_ppminteger(int64)falsenoneThe rate at which the Adjusted Bankruptcy Rating increases.
» spread_to_maintenance_margin_ratio_ppminteger(int64)falsenoneThe maximum value that the liquidation spread can take, asa ratio against the position's maintenance margin.

dydxprotocol.clob.MEVLiquidationMatch

{
  "liquidated_subaccount_id": {
    "owner": "string",
    "number": 0
  },
  "insurance_fund_delta_quote_quantums": "string",
  "maker_order_subaccount_id": {
    "owner": "string",
    "number": 0
  },
  "maker_order_subticks": "string",
  "maker_order_is_buy": true,
  "maker_fee_ppm": 0,
  "clob_pair_id": 0,
  "fill_amount": "string"
}
 

MEVLiquidationMatch represents all necessary data to calculate MEV for a liquidation.

Properties

NameTypeRequiredRestrictionsDescription
liquidated_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
insurance_fund_delta_quote_quantumsstring(int64)falsenonenone
maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
maker_order_subticksstring(uint64)falsenonenone
maker_order_is_buybooleanfalsenonenone
maker_fee_ppminteger(int32)falsenonenone
clob_pair_idinteger(int64)falsenonenone
fill_amountstring(uint64)falsenonenone

dydxprotocol.clob.MEVMatch

{
  "taker_order_subaccount_id": {
    "owner": "string",
    "number": 0
  },
  "taker_fee_ppm": 0,
  "maker_order_subaccount_id": {
    "owner": "string",
    "number": 0
  },
  "maker_order_subticks": "string",
  "maker_order_is_buy": true,
  "maker_fee_ppm": 0,
  "clob_pair_id": 0,
  "fill_amount": "string"
}
 

MEVMatch represents all necessary data to calculate MEV for a regular match.

Properties

NameTypeRequiredRestrictionsDescription
taker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
taker_fee_ppminteger(int32)falsenonenone
maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
maker_order_subticksstring(uint64)falsenonenone
maker_order_is_buybooleanfalsenonenone
maker_fee_ppminteger(int32)falsenonenone
clob_pair_idinteger(int64)falsenonenone
fill_amountstring(uint64)falsenonenone

dydxprotocol.clob.MaxPerNBlocksRateLimit

{
  "num_blocks": 0,
  "limit": 0
}
 

Defines a rate limit over a specific number of blocks.

Properties

NameTypeRequiredRestrictionsDescription
num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.

dydxprotocol.clob.MevNodeToNodeCalculationRequest

{
  "block_proposer_matches": {
    "matches": [
      {
        "taker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "taker_fee_ppm": 0,
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ],
    "liquidation_matches": [
      {
        "liquidated_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "insurance_fund_delta_quote_quantums": "string",
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ]
  },
  "validator_mev_metrics": {
    "validator_mev_matches": {
      "matches": [
        {
          "taker_order_subaccount_id": {},
          "taker_fee_ppm": 0,
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ],
      "liquidation_matches": [
        {
          "liquidated_subaccount_id": {},
          "insurance_fund_delta_quote_quantums": "string",
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ]
    },
    "clob_mid_prices": [
      {
        "clob_pair": {
          "id": 0,
          "perpetual_clob_metadata": {},
          "spot_clob_metadata": {},
          "step_base_quantums": "string",
          "subticks_per_tick": 0,
          "quantum_conversion_exponent": 0,
          "status": "["
        },
        "subticks": "string"
      }
    ],
    "bp_mev_matches": {
      "matches": [
        {
          "taker_order_subaccount_id": {},
          "taker_fee_ppm": 0,
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ],
      "liquidation_matches": [
        {
          "liquidated_subaccount_id": {},
          "insurance_fund_delta_quote_quantums": "string",
          "maker_order_subaccount_id": {},
          "maker_order_subticks": "string",
          "maker_order_is_buy": true,
          "maker_fee_ppm": 0,
          "clob_pair_id": 0,
          "fill_amount": "string"
        }
      ]
    },
    "proposal_receive_time": "string"
  }
}
 

MevNodeToNodeCalculationRequest is a request message used to run the MEV node <> node calculation.

Properties

NameTypeRequiredRestrictionsDescription
block_proposer_matchesobjectfalsenoneRepresents the matches on the "block proposer". Note that this fielddoes not need to be the actual block proposer's matches for a block, sincethe MEV calculation logic is run with this nodes matches as the "blockproposer" matches.
» matches[object]falsenonenone
»» taker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» taker_fee_ppminteger(int32)falsenonenone
»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» maker_order_subticksstring(uint64)falsenonenone
»» maker_order_is_buybooleanfalsenonenone
»» maker_fee_ppminteger(int32)falsenonenone
»» clob_pair_idinteger(int64)falsenonenone
»» fill_amountstring(uint64)falsenonenone
» liquidation_matches[object]falsenonenone
»» liquidated_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» insurance_fund_delta_quote_quantumsstring(int64)falsenonenone
»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» maker_order_subticksstring(uint64)falsenonenone
»» maker_order_is_buybooleanfalsenonenone
»» maker_fee_ppminteger(int32)falsenonenone
»» clob_pair_idinteger(int64)falsenonenone
»» fill_amountstring(uint64)falsenonenone
validator_mev_metricsobjectfalsenoneRepresents the matches and mid-prices on the validator.
» validator_mev_matchesobjectfalsenoneValidatorMevMatches contains all matches from the validator's localoperations queue.
»» matches[object]falsenonenone
»»» taker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» taker_fee_ppminteger(int32)falsenonenone
»»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» maker_order_subticksstring(uint64)falsenonenone
»»» maker_order_is_buybooleanfalsenonenone
»»» maker_fee_ppminteger(int32)falsenonenone
»»» clob_pair_idinteger(int64)falsenonenone
»»» fill_amountstring(uint64)falsenonenone
»» liquidation_matches[object]falsenonenone
»»» liquidated_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» insurance_fund_delta_quote_quantumsstring(int64)falsenonenone
»»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» maker_order_subticksstring(uint64)falsenonenone
»»» maker_order_is_buybooleanfalsenonenone
»»» maker_fee_ppminteger(int32)falsenonenone
»»» clob_pair_idinteger(int64)falsenonenone
»»» fill_amountstring(uint64)falsenonenone
» clob_mid_prices[object]falsenonenone
»» clob_pairobjectfalsenoneClobPair represents a single CLOB pair for a given productin state.
»»» idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
»»» perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
»»»» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
»»» spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
»»»» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
»»»» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
»»» step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
»»» subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
»»» quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
»»» statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.
»» subticksstring(uint64)falsenonenone
» bp_mev_matchesobjectfalsenoneValidatorMevMatches contains all matches from the validator's localoperations queue.
»» matches[object]falsenonenone
»»» taker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» taker_fee_ppminteger(int32)falsenonenone
»»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» maker_order_subticksstring(uint64)falsenonenone
»»» maker_order_is_buybooleanfalsenonenone
»»» maker_fee_ppminteger(int32)falsenonenone
»»» clob_pair_idinteger(int64)falsenonenone
»»» fill_amountstring(uint64)falsenonenone
»» liquidation_matches[object]falsenonenone
»»» liquidated_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» insurance_fund_delta_quote_quantumsstring(int64)falsenonenone
»»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»»» maker_order_subticksstring(uint64)falsenonenone
»»» maker_order_is_buybooleanfalsenonenone
»»» maker_fee_ppminteger(int32)falsenonenone
»»» clob_pair_idinteger(int64)falsenonenone
»»» fill_amountstring(uint64)falsenonenone
» proposal_receive_timestring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

dydxprotocol.clob.MevNodeToNodeCalculationResponse

{
  "results": [
    {
      "clob_pair_id": 0,
      "mev": 0.1,
      "volume": "string"
    }
  ]
}
 

MevNodeToNodeCalculationResponse is a response message that contains the MEV node <> node calculation result.

Properties

NameTypeRequiredRestrictionsDescription
results[object]falsenonenone
» clob_pair_idinteger(int64)falsenonenone
» mevnumber(float)falsenonenone
» volumestring(uint64)falsenonenone

dydxprotocol.clob.MevNodeToNodeCalculationResponse.MevAndVolumePerClob

{
  "clob_pair_id": 0,
  "mev": 0.1,
  "volume": "string"
}
 

MevAndVolumePerClob contains information about the MEV and volume per CLOB.

Properties

NameTypeRequiredRestrictionsDescription
clob_pair_idinteger(int64)falsenonenone
mevnumber(float)falsenonenone
volumestring(uint64)falsenonenone

dydxprotocol.clob.MevNodeToNodeMetrics

{
  "validator_mev_matches": {
    "matches": [
      {
        "taker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "taker_fee_ppm": 0,
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ],
    "liquidation_matches": [
      {
        "liquidated_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "insurance_fund_delta_quote_quantums": "string",
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ]
  },
  "clob_mid_prices": [
    {
      "clob_pair": {
        "id": 0,
        "perpetual_clob_metadata": {
          "perpetual_id": 0
        },
        "spot_clob_metadata": {
          "base_asset_id": 0,
          "quote_asset_id": 0
        },
        "step_base_quantums": "string",
        "subticks_per_tick": 0,
        "quantum_conversion_exponent": 0,
        "status": "STATUS_UNSPECIFIED"
      },
      "subticks": "string"
    }
  ],
  "bp_mev_matches": {
    "matches": [
      {
        "taker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "taker_fee_ppm": 0,
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ],
    "liquidation_matches": [
      {
        "liquidated_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "insurance_fund_delta_quote_quantums": "string",
        "maker_order_subaccount_id": {
          "owner": "string",
          "number": 0
        },
        "maker_order_subticks": "string",
        "maker_order_is_buy": true,
        "maker_fee_ppm": 0,
        "clob_pair_id": 0,
        "fill_amount": "string"
      }
    ]
  },
  "proposal_receive_time": "string"
}
 

MevNodeToNodeMetrics is a data structure for encapsulating all MEV node <> node metrics.

Properties

NameTypeRequiredRestrictionsDescription
validator_mev_matchesobjectfalsenoneValidatorMevMatches contains all matches from the validator's localoperations queue.
» matches[object]falsenonenone
»» taker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» taker_fee_ppminteger(int32)falsenonenone
»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» maker_order_subticksstring(uint64)falsenonenone
»» maker_order_is_buybooleanfalsenonenone
»» maker_fee_ppminteger(int32)falsenonenone
»» clob_pair_idinteger(int64)falsenonenone
»» fill_amountstring(uint64)falsenonenone
» liquidation_matches[object]falsenonenone
»» liquidated_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» insurance_fund_delta_quote_quantumsstring(int64)falsenonenone
»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» maker_order_subticksstring(uint64)falsenonenone
»» maker_order_is_buybooleanfalsenonenone
»» maker_fee_ppminteger(int32)falsenonenone
»» clob_pair_idinteger(int64)falsenonenone
»» fill_amountstring(uint64)falsenonenone
clob_mid_prices[object]falsenonenone
» clob_pairobjectfalsenoneClobPair represents a single CLOB pair for a given productin state.
»» idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
»» perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
»»» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
»» spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
»»» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
»»» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
»» step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
»» subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
»» quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
»» statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.
» subticksstring(uint64)falsenonenone
bp_mev_matchesobjectfalsenoneValidatorMevMatches contains all matches from the validator's localoperations queue.
» matches[object]falsenonenone
»» taker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» taker_fee_ppminteger(int32)falsenonenone
»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» maker_order_subticksstring(uint64)falsenonenone
»» maker_order_is_buybooleanfalsenonenone
»» maker_fee_ppminteger(int32)falsenonenone
»» clob_pair_idinteger(int64)falsenonenone
»» fill_amountstring(uint64)falsenonenone
» liquidation_matches[object]falsenonenone
»» liquidated_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» insurance_fund_delta_quote_quantumsstring(int64)falsenonenone
»» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
»» maker_order_subticksstring(uint64)falsenonenone
»» maker_order_is_buybooleanfalsenonenone
»» maker_fee_ppminteger(int32)falsenonenone
»» clob_pair_idinteger(int64)falsenonenone
»» fill_amountstring(uint64)falsenonenone
proposal_receive_timestring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

dydxprotocol.clob.PerpetualClobMetadata

{
  "perpetual_id": 0
}
 

PerpetualClobMetadata contains metadata for a ClobPair representing a Perpetual product.

Properties

NameTypeRequiredRestrictionsDescription
perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.

dydxprotocol.clob.PositionBlockLimits

{
  "min_position_notional_liquidated": "string",
  "max_position_portion_liquidated_ppm": 0
}
 

PositionBlockLimits stores all configurable fields related to limits around how much of a single position can be liquidated within a single block.

Properties

NameTypeRequiredRestrictionsDescription
min_position_notional_liquidatedstring(uint64)falsenoneThe minimum amount of quantums to liquidate for each message (inquote quantums).Overridden by the maximum size of the position.
max_position_portion_liquidated_ppminteger(int64)falsenoneThe maximum portion of the position liquidated (in parts-per-million). Overridden by min_position_notional_liquidated.

dydxprotocol.clob.QueryBlockRateLimitConfigurationResponse

{
  "block_rate_limit_config": {
    "max_short_term_orders_per_n_blocks": [
      {
        "num_blocks": 0,
        "limit": 0
      }
    ],
    "max_stateful_orders_per_n_blocks": [
      {
        "num_blocks": 0,
        "limit": 0
      }
    ],
    "max_short_term_order_cancellations_per_n_blocks": [
      {
        "num_blocks": 0,
        "limit": 0
      }
    ],
    "max_short_term_orders_and_cancels_per_n_blocks": [
      {
        "num_blocks": 0,
        "limit": 0
      }
    ]
  }
}
 

QueryBlockRateLimitConfigurationResponse is a response message that contains the BlockRateLimitConfiguration.

Properties

NameTypeRequiredRestrictionsDescription
block_rate_limit_configobjectfalsenoneDefines the block rate limits for CLOB specific operations.
» max_short_term_orders_per_n_blocks[object]falsenoneHow many short term order attempts (successful and failed) are allowed foran account per N blocks. Note that the rate limits are appliedin an AND fashion such that an order placement must pass all rate limitconfigurations.Specifying 0 values disables this rate limit.Deprecated in favor of max_short_term_orders_and_cancels_per_n_blocksfor v5.x onwards.
»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
» max_stateful_orders_per_n_blocks[object]falsenoneHow many stateful order attempts (successful and failed) are allowed foran account per N blocks. Note that the rate limits are appliedin an AND fashion such that an order placement must pass all rate limitconfigurations.Specifying 0 values disables this rate limit.
»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
» max_short_term_order_cancellations_per_n_blocks[object]falsenoneHow many short term order cancellation attempts (successful and failed) areallowed for an account per N blocks. Note that the rate limits areapplied in an AND fashion such that an order cancellation must pass allrate limit configurations.Specifying 0 values disables this rate limit.Deprecated in favor of max_short_term_orders_and_cancels_per_n_blocksfor v5.x onwards.
»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.
» max_short_term_orders_and_cancels_per_n_blocks[object]falsenoneHow many short term order place and cancel attempts (successful and failed)are allowed for an account per N blocks. Note that the rate limits areapplied in an AND fashion such that an order placement must pass all ratelimit configurations.Specifying 0 values disables this rate limit.
»» num_blocksinteger(int64)falsenoneHow many blocks the rate limit is over.Specifying 0 is invalid.
»» limitinteger(int64)falsenoneWhat the limit is for num_blocks.Specifying 0 is invalid.

dydxprotocol.clob.QueryClobPairAllResponse

{
  "clob_pair": [
    {
      "id": 0,
      "perpetual_clob_metadata": {
        "perpetual_id": 0
      },
      "spot_clob_metadata": {
        "base_asset_id": 0,
        "quote_asset_id": 0
      },
      "step_base_quantums": "string",
      "subticks_per_tick": 0,
      "quantum_conversion_exponent": 0,
      "status": "STATUS_UNSPECIFIED"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryClobPairAllResponse is response type for the ClobPairAll method.

Properties

NameTypeRequiredRestrictionsDescription
clob_pair[object]falsenonenone
» idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
» perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
»» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
» spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
»» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
»» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
» step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
» subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
» quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
» statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

dydxprotocol.clob.QueryClobPairResponse

{
  "clob_pair": {
    "id": 0,
    "perpetual_clob_metadata": {
      "perpetual_id": 0
    },
    "spot_clob_metadata": {
      "base_asset_id": 0,
      "quote_asset_id": 0
    },
    "step_base_quantums": "string",
    "subticks_per_tick": 0,
    "quantum_conversion_exponent": 0,
    "status": "STATUS_UNSPECIFIED"
  }
}
 

QueryClobPairResponse is response type for the ClobPair method.

Properties

NameTypeRequiredRestrictionsDescription
clob_pairobjectfalsenoneClobPair represents a single CLOB pair for a given productin state.
» idinteger(int64)falsenoneID of the orderbook that stores all resting liquidity for this CLOB.
» perpetual_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Perpetual product.
»» perpetual_idinteger(int64)falsenoneId of the Perpetual the CLOB allows trading of.
» spot_clob_metadataobjectfalsenonePerpetualClobMetadata contains metadata for a ClobPairrepresenting a Spot product.
»» base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
»» quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.
» step_base_quantumsstring(uint64)falsenoneMinimum increment in the size of orders on the CLOB, in base quantums.
» subticks_per_tickinteger(int64)falsenoneDefines the tick size of the orderbook by defining how many subticksare in one tick. That is, the subticks of any valid order must be amultiple of this value. Generally this value should start >= 100toallow room for decreasing it.
» quantum_conversion_exponentinteger(int32)falsenone10^Exponent gives the number of QuoteQuantums traded per BaseQuantumper Subtick.
» statusstringfalsenoneStatus of the CLOB. - STATUS_UNSPECIFIED: Default value. This value is invalid and unused. - STATUS_ACTIVE: STATUS_ACTIVE represents an active clob pair. - STATUS_PAUSED: STATUS_PAUSED behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_CANCEL_ONLY: STATUS_CANCEL_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_POST_ONLY: STATUS_POST_ONLY behavior is unfinalized.TODO(DEC-600): update this documentation. - STATUS_INITIALIZING: STATUS_INITIALIZING represents a newly-added clob pair.Clob pairs in this state only accept orders which areboth short-term and post-only. - STATUS_FINAL_SETTLEMENT: STATUS_FINAL_SETTLEMENT represents a clob pair which is deactivatedand trading has ceased. All open positions will be closed by theprotocol. Open stateful orders will be cancelled. Open short-termorders will be left to expire.

Enumerated Values

PropertyValue
statusSTATUS_UNSPECIFIED
statusSTATUS_ACTIVE
statusSTATUS_PAUSED
statusSTATUS_CANCEL_ONLY
statusSTATUS_POST_ONLY
statusSTATUS_INITIALIZING
statusSTATUS_FINAL_SETTLEMENT

dydxprotocol.clob.QueryEquityTierLimitConfigurationResponse

{
  "equity_tier_limit_config": {
    "short_term_order_equity_tiers": [
      {
        "usd_tnc_required": "string",
        "limit": 0
      }
    ],
    "stateful_order_equity_tiers": [
      {
        "usd_tnc_required": "string",
        "limit": 0
      }
    ]
  }
}
 

QueryEquityTierLimitConfigurationResponse is a response message that contains the EquityTierLimitConfiguration.

Properties

NameTypeRequiredRestrictionsDescription
equity_tier_limit_configobjectfalsenoneDefines the set of equity tiers to limit how many open ordersa subaccount is allowed to have.
» short_term_order_equity_tiers[object]falsenoneHow many short term stateful orders are allowed per equity tier.Specifying 0 values disables this limit.
»» usd_tnc_requiredstring(byte)falsenoneThe total net collateral in USDC quote quantums of equity required.
»» limitinteger(int64)falsenoneWhat the limit is for usd_tnc_required.
» stateful_order_equity_tiers[object]falsenoneHow many open stateful orders are allowed per equity tier.Specifying 0 values disables this limit.
»» usd_tnc_requiredstring(byte)falsenoneThe total net collateral in USDC quote quantums of equity required.
»» limitinteger(int64)falsenoneWhat the limit is for usd_tnc_required.

dydxprotocol.clob.QueryLiquidationsConfigurationResponse

{
  "liquidations_config": {
    "max_liquidation_fee_ppm": 0,
    "position_block_limits": {
      "min_position_notional_liquidated": "string",
      "max_position_portion_liquidated_ppm": 0
    },
    "subaccount_block_limits": {
      "max_notional_liquidated": "string",
      "max_quantums_insurance_lost": "string"
    },
    "fillable_price_config": {
      "bankruptcy_adjustment_ppm": 0,
      "spread_to_maintenance_margin_ratio_ppm": 0
    }
  }
}
 

QueryLiquidationsConfigurationResponse is a response message that contains the LiquidationsConfiguration.

Properties

NameTypeRequiredRestrictionsDescription
liquidations_configobjectfalsenoneLiquidationsConfig stores all configurable fields related to liquidations.
» max_liquidation_fee_ppminteger(int64)falsenoneThe maximum liquidation fee (in parts-per-million). This fee goes100% to the insurance fund.
» position_block_limitsobjectfalsenoneLimits around how much of a single position can be liquidatedwithin a single block.
»» min_position_notional_liquidatedstring(uint64)falsenoneThe minimum amount of quantums to liquidate for each message (inquote quantums).Overridden by the maximum size of the position.
»» max_position_portion_liquidated_ppminteger(int64)falsenoneThe maximum portion of the position liquidated (in parts-per-million). Overridden by min_position_notional_liquidated.
» subaccount_block_limitsobjectfalsenoneLimits around how many quote quantums from a single subaccount canbe liquidated within a single block.
»» max_notional_liquidatedstring(uint64)falsenoneThe maximum notional amount that a single subaccount can haveliquidated (in quote quantums) per block.
»» max_quantums_insurance_loststring(uint64)falsenoneThe maximum insurance-fund payout amount for a given subaccountper block. I.e. how much it can cover for that subaccount.
» fillable_price_configobjectfalsenoneConfig about how the fillable-price spread from the oracle priceincreases based on the adjusted bankruptcy rating of the subaccount.
»» bankruptcy_adjustment_ppminteger(int64)falsenoneThe rate at which the Adjusted Bankruptcy Rating increases.
»» spread_to_maintenance_margin_ratio_ppminteger(int64)falsenoneThe maximum value that the liquidation spread can take, asa ratio against the position's maintenance margin.

dydxprotocol.clob.SpotClobMetadata

{
  "base_asset_id": 0,
  "quote_asset_id": 0
}
 

PerpetualClobMetadata contains metadata for a ClobPair representing a Spot product.

Properties

NameTypeRequiredRestrictionsDescription
base_asset_idinteger(int64)falsenoneId of the base Asset in the trading pair.
quote_asset_idinteger(int64)falsenoneId of the quote Asset in the trading pair.

dydxprotocol.clob.StreamOrderbookUpdatesResponse

{
  "updates": [
    {
      "order_place": {
        "order": {
          "order_id": {},
          "side": "[",
          "quantums": "string",
          "subticks": "string",
          "good_til_block": 0,
          "good_til_block_time": 0,
          "time_in_force": "[",
          "reduce_only": true,
          "client_metadata": 0,
          "condition_type": "[",
          "conditional_order_trigger_subticks": "string"
        },
        "placement_status": "ORDER_PLACEMENT_STATUS_UNSPECIFIED"
      },
      "order_remove": {
        "removed_order_id": {
          "subaccount_id": {},
          "client_id": 0,
          "order_flags": 0,
          "clob_pair_id": 0
        },
        "reason": "ORDER_REMOVAL_REASON_UNSPECIFIED",
        "removal_status": "ORDER_REMOVAL_STATUS_UNSPECIFIED"
      },
      "order_update": {
        "order_id": {
          "subaccount_id": {},
          "client_id": 0,
          "order_flags": 0,
          "clob_pair_id": 0
        },
        "total_filled_quantums": "string"
      }
    }
  ],
  "snapshot": true,
  "block_height": 0,
  "exec_mode": 0
}
 

StreamOrderbookUpdatesResponse is a response message for the StreamOrderbookUpdates method.

Properties

NameTypeRequiredRestrictionsDescription
updates[object]falsenoneOrderbook updates for the clob pair.
» order_placeobjectfalsenoneOrderPlace messages contain the order placed/replaced.
»» orderobjectfalsenoneIndexerOrderV1 represents a single order belonging to a Subaccountfor a particular ClobPair.
»»» order_idobjectfalsenoneThe unique ID of this order. Meant to be unique across all orders.
»»»» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
»»»» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
»»»» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
»»»» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
»»» sidestringfalsenoneRepresents the side of the orderbook the order will be placed on.Note that Side.SIDE_UNSPECIFIED is an invalid order and cannot beplaced on the orderbook. - SIDE_UNSPECIFIED: Default value. This value is invalid and unused. - SIDE_BUY: SIDE_BUY is used to represent a BUY order. - SIDE_SELL: SIDE_SELL is used to represent a SELL order.
»»» quantumsstring(uint64)falsenoneThe size of this order in base quantums. Must be a multiple ofClobPair.StepBaseQuantums (where ClobPair.Id = orderId.ClobPairId).
»»» subticksstring(uint64)falsenoneThe price level that this order will be placed at on the orderbook,in subticks. Must be a multiple of ClobPair.SubticksPerTick(where ClobPair.Id = orderId.ClobPairId).
»»» good_til_blockinteger(int64)falsenoneThe last block this order can be executed at (after which it will beunfillable). Used only for Short-Term orders. If this value is non-zerothen the order is assumed to be a Short-Term order.
»»» good_til_block_timeinteger(int64)falsenonegood_til_block_time represents the unix timestamp (in seconds) at which astateful order will be considered expired. Thegood_til_block_time is always evaluated against the previous block'sBlockTime instead of the block in which the order is committed. If thisvalue is non-zero then the order is assumed to be a stateful orconditional order.
»»» time_in_forcestringfalsenoneThe time in force of this order.
»»» reduce_onlybooleanfalsenoneEnforces that the order can only reduce the size of an existing position.If a ReduceOnly order would change the side of the existing position,its size is reduced to that of the remaining size of the position.If existing orders on the book with ReduceOnlywould already close the position, the least aggressive (out-of-the-money)ReduceOnly orders are resized and canceled first.
»»» client_metadatainteger(int64)falsenoneSet of bit flags set arbitrarily by clients and ignored by the protocol.Used by indexer to infer information about a placed order.
»»» condition_typestringfalsenone- CONDITION_TYPE_UNSPECIFIED: CONDITION_TYPE_UNSPECIFIED represents the default behavior where anorder will be placed immediately on the orderbook. - CONDITION_TYPE_STOP_LOSS: CONDITION_TYPE_STOP_LOSS represents a stop order. A stop order willtrigger when the oracle price moves at or above the trigger price forbuys, and at or below the trigger price for sells. - CONDITION_TYPE_TAKE_PROFIT: CONDITION_TYPE_TAKE_PROFIT represents a take profit order. A take profitorder will trigger when the oracle price moves at or below the triggerprice for buys and at or above the trigger price for sells.
»»» conditional_order_trigger_subticksstring(uint64)falsenoneconditional_order_trigger_subticks represents the price at which this orderwill be triggered. If the condition_type is CONDITION_TYPE_UNSPECIFIED,this value is enforced to be 0. If this value is nonzero, condition_typecannot be CONDITION_TYPE_UNSPECIFIED. Value is in subticks.Must be a multiple of ClobPair.SubticksPerTick (where ClobPair.Id =<br />orderId.ClobPairId).
»» placement_statusstringfalsenoneOrderPlacementStatus is an enum for the resulting status after an order isplaced. - ORDER_PLACEMENT_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED: A best effort opened order is one that has only been confirmed to beplaced on the dYdX node sending the off-chain update message.The cases where this happens includes:- The dYdX node places an order in it's in-memory orderbook during the CheckTx flow.A best effort placed order may not have been placed on other dYdXnodes including other dYdX validator nodes and may still be excluded infuture order matches. - ORDER_PLACEMENT_STATUS_OPENED: An opened order is one that is confirmed to be placed on all dYdX nodes(discounting dishonest dYdX nodes) and will be included in any futureorder matches.This status is used internally by the indexer and will not be sentout by protocol.
» order_removeobjectfalsenoneOrderRemove messages contain the id of the order removed, the reason for theremoval and the resulting status from the removal.
»» removed_order_idobjectfalsenoneIndexerOrderId refers to a single order belonging to a Subaccount.
»»» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
»»» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
»»» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
»»» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
»» reasonstringfalsenoneOrderRemovalReason is an enum of all the reasons an order was removed. - ORDER_REMOVAL_REASON_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_REASON_EXPIRED: The order was removed due to being expired. - ORDER_REMOVAL_REASON_USER_CANCELED: The order was removed due to being canceled by a user. - ORDER_REMOVAL_REASON_UNDERCOLLATERALIZED: The order was removed due to being undercollateralized. - ORDER_REMOVAL_REASON_INTERNAL_ERROR: The order caused an internal error during order placement and wasremoved. - ORDER_REMOVAL_REASON_SELF_TRADE_ERROR: The order would have matched against another order placed by the samesubaccount and was removed. - ORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER: The order would have matched against maker orders on the orderbookdespite being a post-only order and was removed. - ORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK: The order was an ICO order and would have been placed on the orderbook asresting liquidity and was removed. - ORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED: The order was a fill-or-kill order that could not be fully filled and wasremoved. - ORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE: The order was a reduce-only order that was removed due to either:- being a taker order and fully-filling the order would flip the side of the subaccount's position, in this case the remaining size of the order is removed- being a maker order resting on the book and being removed when either the subaccount's position is closed or flipped sides - ORDER_REMOVAL_REASON_INDEXER_EXPIRED: The order should be expired, according to the Indexer's cached data, butthe Indexer has yet to receive a message to remove the order. In order tokeep the data cached by the Indexer up-to-date and accurate, clear outthe data if it's expired by sending an order removal with this reason.Protocol should never send this reason to Indexer. - ORDER_REMOVAL_REASON_REPLACED: The order has been replaced. - ORDER_REMOVAL_REASON_FULLY_FILLED: The order has been fully-filled. Only sent by the Indexer for statefulorders. - ORDER_REMOVAL_REASON_EQUITY_TIER: The order has been removed since the subaccount does not satisfy theequity tier requirements. - ORDER_REMOVAL_REASON_FINAL_SETTLEMENT: The order has been removed since its ClobPair has entered final settlement.
»» removal_statusstringfalsenoneOrderRemovalStatus is an enum for the resulting status after an order isremoved. - ORDER_REMOVAL_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED: A best effort canceled order is one that has only been confirmed to beremoved on the dYdX node sending the off-chain update message.The cases where this happens includes:- the order was removed due to the dYdX node receiving a CancelOrder transaction for the order.- the order was removed due to being undercollateralized during optimistic matching.A best effort canceled order may not have been removed on other dYdXnodes including other dYdX validator nodes and may still be included infuture order matches. - ORDER_REMOVAL_STATUS_CANCELED: A canceled order is one that is confirmed to be removed on all dYdX nodes(discounting dishonest dYdX nodes) and will not be included in any futureorder matches.The cases where this happens includes:- the order is expired. - ORDER_REMOVAL_STATUS_FILLED: An order was fully-filled. Only sent by the Indexer for stateful orders.
» order_updateobjectfalsenoneOrderUpdate messages contain the id of the order being updated, and theupdated total filled quantums of the order.
»» order_idobjectfalsenoneIndexerOrderId refers to a single order belonging to a Subaccount.
»»» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
»»» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
»»» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
»»» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
»» total_filled_quantumsstring(uint64)falsenonenone
snapshotbooleanfalsenoneSnapshot indicates if the response is from a snapshot of the orderbook.This is true for the initial response and false for all subsequent updates.Note that if the snapshot is true, then all previous entries should bediscarded and the orderbook should be resynced.
block_heightinteger(int64)falsenone---Additional fields used to debug issues---Block height of the updates.
exec_modeinteger(int64)falsenoneExec mode of the updates.

Enumerated Values

PropertyValue
sideSIDE_UNSPECIFIED
sideSIDE_BUY
sideSIDE_SELL
time_in_forceTIME_IN_FORCE_UNSPECIFIED
time_in_forceTIME_IN_FORCE_IOC
time_in_forceTIME_IN_FORCE_POST_ONLY
time_in_forceTIME_IN_FORCE_FILL_OR_KILL
condition_typeCONDITION_TYPE_UNSPECIFIED
condition_typeCONDITION_TYPE_STOP_LOSS
condition_typeCONDITION_TYPE_TAKE_PROFIT
placement_statusORDER_PLACEMENT_STATUS_UNSPECIFIED
placement_statusORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED
placement_statusORDER_PLACEMENT_STATUS_OPENED
reasonORDER_REMOVAL_REASON_UNSPECIFIED
reasonORDER_REMOVAL_REASON_EXPIRED
reasonORDER_REMOVAL_REASON_USER_CANCELED
reasonORDER_REMOVAL_REASON_UNDERCOLLATERALIZED
reasonORDER_REMOVAL_REASON_INTERNAL_ERROR
reasonORDER_REMOVAL_REASON_SELF_TRADE_ERROR
reasonORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER
reasonORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK
reasonORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED
reasonORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE
reasonORDER_REMOVAL_REASON_INDEXER_EXPIRED
reasonORDER_REMOVAL_REASON_REPLACED
reasonORDER_REMOVAL_REASON_FULLY_FILLED
reasonORDER_REMOVAL_REASON_EQUITY_TIER
reasonORDER_REMOVAL_REASON_FINAL_SETTLEMENT
removal_statusORDER_REMOVAL_STATUS_UNSPECIFIED
removal_statusORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED
removal_statusORDER_REMOVAL_STATUS_CANCELED
removal_statusORDER_REMOVAL_STATUS_FILLED

dydxprotocol.clob.SubaccountBlockLimits

{
  "max_notional_liquidated": "string",
  "max_quantums_insurance_lost": "string"
}
 

SubaccountBlockLimits stores all configurable fields related to limits around how many quote quantums from a single subaccount can be liquidated within a single block.

Properties

NameTypeRequiredRestrictionsDescription
max_notional_liquidatedstring(uint64)falsenoneThe maximum notional amount that a single subaccount can haveliquidated (in quote quantums) per block.
max_quantums_insurance_loststring(uint64)falsenoneThe maximum insurance-fund payout amount for a given subaccountper block. I.e. how much it can cover for that subaccount.

dydxprotocol.clob.ValidatorMevMatches

{
  "matches": [
    {
      "taker_order_subaccount_id": {
        "owner": "string",
        "number": 0
      },
      "taker_fee_ppm": 0,
      "maker_order_subaccount_id": {
        "owner": "string",
        "number": 0
      },
      "maker_order_subticks": "string",
      "maker_order_is_buy": true,
      "maker_fee_ppm": 0,
      "clob_pair_id": 0,
      "fill_amount": "string"
    }
  ],
  "liquidation_matches": [
    {
      "liquidated_subaccount_id": {
        "owner": "string",
        "number": 0
      },
      "insurance_fund_delta_quote_quantums": "string",
      "maker_order_subaccount_id": {
        "owner": "string",
        "number": 0
      },
      "maker_order_subticks": "string",
      "maker_order_is_buy": true,
      "maker_fee_ppm": 0,
      "clob_pair_id": 0,
      "fill_amount": "string"
    }
  ]
}
 

ValidatorMevMatches contains all matches from the validator's local operations queue.

Properties

NameTypeRequiredRestrictionsDescription
matches[object]falsenonenone
» taker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
» taker_fee_ppminteger(int32)falsenonenone
» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
» maker_order_subticksstring(uint64)falsenonenone
» maker_order_is_buybooleanfalsenonenone
» maker_fee_ppminteger(int32)falsenonenone
» clob_pair_idinteger(int64)falsenonenone
» fill_amountstring(uint64)falsenonenone
liquidation_matches[object]falsenonenone
» liquidated_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
» insurance_fund_delta_quote_quantumsstring(int64)falsenonenone
» maker_order_subaccount_idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
» maker_order_subticksstring(uint64)falsenonenone
» maker_order_is_buybooleanfalsenonenone
» maker_fee_ppminteger(int32)falsenonenone
» clob_pair_idinteger(int64)falsenonenone
» fill_amountstring(uint64)falsenonenone

dydxprotocol.indexer.off_chain_updates.OffChainUpdateV1

{
  "order_place": {
    "order": {
      "order_id": {
        "subaccount_id": {
          "owner": null,
          "number": null
        },
        "client_id": 0,
        "order_flags": 0,
        "clob_pair_id": 0
      },
      "side": "SIDE_UNSPECIFIED",
      "quantums": "string",
      "subticks": "string",
      "good_til_block": 0,
      "good_til_block_time": 0,
      "time_in_force": "TIME_IN_FORCE_UNSPECIFIED",
      "reduce_only": true,
      "client_metadata": 0,
      "condition_type": "CONDITION_TYPE_UNSPECIFIED",
      "conditional_order_trigger_subticks": "string"
    },
    "placement_status": "ORDER_PLACEMENT_STATUS_UNSPECIFIED"
  },
  "order_remove": {
    "removed_order_id": {
      "subaccount_id": {
        "owner": "string",
        "number": 0
      },
      "client_id": 0,
      "order_flags": 0,
      "clob_pair_id": 0
    },
    "reason": "ORDER_REMOVAL_REASON_UNSPECIFIED",
    "removal_status": "ORDER_REMOVAL_STATUS_UNSPECIFIED"
  },
  "order_update": {
    "order_id": {
      "subaccount_id": {
        "owner": "string",
        "number": 0
      },
      "client_id": 0,
      "order_flags": 0,
      "clob_pair_id": 0
    },
    "total_filled_quantums": "string"
  }
}
 

An OffChainUpdate message is the message type which will be sent on Kafka to the Indexer.

Properties

NameTypeRequiredRestrictionsDescription
order_placeobjectfalsenoneOrderPlace messages contain the order placed/replaced.
» orderobjectfalsenoneIndexerOrderV1 represents a single order belonging to a Subaccountfor a particular ClobPair.
»» order_idobjectfalsenoneThe unique ID of this order. Meant to be unique across all orders.
»»» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
»»» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
»»» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
»»» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
»» sidestringfalsenoneRepresents the side of the orderbook the order will be placed on.Note that Side.SIDE_UNSPECIFIED is an invalid order and cannot beplaced on the orderbook. - SIDE_UNSPECIFIED: Default value. This value is invalid and unused. - SIDE_BUY: SIDE_BUY is used to represent a BUY order. - SIDE_SELL: SIDE_SELL is used to represent a SELL order.
»» quantumsstring(uint64)falsenoneThe size of this order in base quantums. Must be a multiple ofClobPair.StepBaseQuantums (where ClobPair.Id = orderId.ClobPairId).
»» subticksstring(uint64)falsenoneThe price level that this order will be placed at on the orderbook,in subticks. Must be a multiple of ClobPair.SubticksPerTick(where ClobPair.Id = orderId.ClobPairId).
»» good_til_blockinteger(int64)falsenoneThe last block this order can be executed at (after which it will beunfillable). Used only for Short-Term orders. If this value is non-zerothen the order is assumed to be a Short-Term order.
»» good_til_block_timeinteger(int64)falsenonegood_til_block_time represents the unix timestamp (in seconds) at which astateful order will be considered expired. Thegood_til_block_time is always evaluated against the previous block'sBlockTime instead of the block in which the order is committed. If thisvalue is non-zero then the order is assumed to be a stateful orconditional order.
»» time_in_forcestringfalsenoneThe time in force of this order.
»» reduce_onlybooleanfalsenoneEnforces that the order can only reduce the size of an existing position.If a ReduceOnly order would change the side of the existing position,its size is reduced to that of the remaining size of the position.If existing orders on the book with ReduceOnlywould already close the position, the least aggressive (out-of-the-money)ReduceOnly orders are resized and canceled first.
»» client_metadatainteger(int64)falsenoneSet of bit flags set arbitrarily by clients and ignored by the protocol.Used by indexer to infer information about a placed order.
»» condition_typestringfalsenone- CONDITION_TYPE_UNSPECIFIED: CONDITION_TYPE_UNSPECIFIED represents the default behavior where anorder will be placed immediately on the orderbook. - CONDITION_TYPE_STOP_LOSS: CONDITION_TYPE_STOP_LOSS represents a stop order. A stop order willtrigger when the oracle price moves at or above the trigger price forbuys, and at or below the trigger price for sells. - CONDITION_TYPE_TAKE_PROFIT: CONDITION_TYPE_TAKE_PROFIT represents a take profit order. A take profitorder will trigger when the oracle price moves at or below the triggerprice for buys and at or above the trigger price for sells.
»» conditional_order_trigger_subticksstring(uint64)falsenoneconditional_order_trigger_subticks represents the price at which this orderwill be triggered. If the condition_type is CONDITION_TYPE_UNSPECIFIED,this value is enforced to be 0. If this value is nonzero, condition_typecannot be CONDITION_TYPE_UNSPECIFIED. Value is in subticks.Must be a multiple of ClobPair.SubticksPerTick (where ClobPair.Id =<br />orderId.ClobPairId).
» placement_statusstringfalsenoneOrderPlacementStatus is an enum for the resulting status after an order isplaced. - ORDER_PLACEMENT_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED: A best effort opened order is one that has only been confirmed to beplaced on the dYdX node sending the off-chain update message.The cases where this happens includes:- The dYdX node places an order in it's in-memory orderbook during the CheckTx flow.A best effort placed order may not have been placed on other dYdXnodes including other dYdX validator nodes and may still be excluded infuture order matches. - ORDER_PLACEMENT_STATUS_OPENED: An opened order is one that is confirmed to be placed on all dYdX nodes(discounting dishonest dYdX nodes) and will be included in any futureorder matches.This status is used internally by the indexer and will not be sentout by protocol.
order_removeobjectfalsenoneOrderRemove messages contain the id of the order removed, the reason for theremoval and the resulting status from the removal.
» removed_order_idobjectfalsenoneIndexerOrderId refers to a single order belonging to a Subaccount.
»» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
»» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
»» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
»» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
» reasonstringfalsenoneOrderRemovalReason is an enum of all the reasons an order was removed. - ORDER_REMOVAL_REASON_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_REASON_EXPIRED: The order was removed due to being expired. - ORDER_REMOVAL_REASON_USER_CANCELED: The order was removed due to being canceled by a user. - ORDER_REMOVAL_REASON_UNDERCOLLATERALIZED: The order was removed due to being undercollateralized. - ORDER_REMOVAL_REASON_INTERNAL_ERROR: The order caused an internal error during order placement and wasremoved. - ORDER_REMOVAL_REASON_SELF_TRADE_ERROR: The order would have matched against another order placed by the samesubaccount and was removed. - ORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER: The order would have matched against maker orders on the orderbookdespite being a post-only order and was removed. - ORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK: The order was an ICO order and would have been placed on the orderbook asresting liquidity and was removed. - ORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED: The order was a fill-or-kill order that could not be fully filled and wasremoved. - ORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE: The order was a reduce-only order that was removed due to either:- being a taker order and fully-filling the order would flip the side of the subaccount's position, in this case the remaining size of the order is removed- being a maker order resting on the book and being removed when either the subaccount's position is closed or flipped sides - ORDER_REMOVAL_REASON_INDEXER_EXPIRED: The order should be expired, according to the Indexer's cached data, butthe Indexer has yet to receive a message to remove the order. In order tokeep the data cached by the Indexer up-to-date and accurate, clear outthe data if it's expired by sending an order removal with this reason.Protocol should never send this reason to Indexer. - ORDER_REMOVAL_REASON_REPLACED: The order has been replaced. - ORDER_REMOVAL_REASON_FULLY_FILLED: The order has been fully-filled. Only sent by the Indexer for statefulorders. - ORDER_REMOVAL_REASON_EQUITY_TIER: The order has been removed since the subaccount does not satisfy theequity tier requirements. - ORDER_REMOVAL_REASON_FINAL_SETTLEMENT: The order has been removed since its ClobPair has entered final settlement.
» removal_statusstringfalsenoneOrderRemovalStatus is an enum for the resulting status after an order isremoved. - ORDER_REMOVAL_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED: A best effort canceled order is one that has only been confirmed to beremoved on the dYdX node sending the off-chain update message.The cases where this happens includes:- the order was removed due to the dYdX node receiving a CancelOrder transaction for the order.- the order was removed due to being undercollateralized during optimistic matching.A best effort canceled order may not have been removed on other dYdXnodes including other dYdX validator nodes and may still be included infuture order matches. - ORDER_REMOVAL_STATUS_CANCELED: A canceled order is one that is confirmed to be removed on all dYdX nodes(discounting dishonest dYdX nodes) and will not be included in any futureorder matches.The cases where this happens includes:- the order is expired. - ORDER_REMOVAL_STATUS_FILLED: An order was fully-filled. Only sent by the Indexer for stateful orders.
order_updateobjectfalsenoneOrderUpdate messages contain the id of the order being updated, and theupdated total filled quantums of the order.
» order_idobjectfalsenoneIndexerOrderId refers to a single order belonging to a Subaccount.
»» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
»» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
»» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
»» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
» total_filled_quantumsstring(uint64)falsenonenone

Enumerated Values

PropertyValue
sideSIDE_UNSPECIFIED
sideSIDE_BUY
sideSIDE_SELL
time_in_forceTIME_IN_FORCE_UNSPECIFIED
time_in_forceTIME_IN_FORCE_IOC
time_in_forceTIME_IN_FORCE_POST_ONLY
time_in_forceTIME_IN_FORCE_FILL_OR_KILL
condition_typeCONDITION_TYPE_UNSPECIFIED
condition_typeCONDITION_TYPE_STOP_LOSS
condition_typeCONDITION_TYPE_TAKE_PROFIT
placement_statusORDER_PLACEMENT_STATUS_UNSPECIFIED
placement_statusORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED
placement_statusORDER_PLACEMENT_STATUS_OPENED
reasonORDER_REMOVAL_REASON_UNSPECIFIED
reasonORDER_REMOVAL_REASON_EXPIRED
reasonORDER_REMOVAL_REASON_USER_CANCELED
reasonORDER_REMOVAL_REASON_UNDERCOLLATERALIZED
reasonORDER_REMOVAL_REASON_INTERNAL_ERROR
reasonORDER_REMOVAL_REASON_SELF_TRADE_ERROR
reasonORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER
reasonORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK
reasonORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED
reasonORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE
reasonORDER_REMOVAL_REASON_INDEXER_EXPIRED
reasonORDER_REMOVAL_REASON_REPLACED
reasonORDER_REMOVAL_REASON_FULLY_FILLED
reasonORDER_REMOVAL_REASON_EQUITY_TIER
reasonORDER_REMOVAL_REASON_FINAL_SETTLEMENT
removal_statusORDER_REMOVAL_STATUS_UNSPECIFIED
removal_statusORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED
removal_statusORDER_REMOVAL_STATUS_CANCELED
removal_statusORDER_REMOVAL_STATUS_FILLED

dydxprotocol.indexer.off_chain_updates.OrderPlaceV1

{
  "order": {
    "order_id": {
      "subaccount_id": {
        "owner": "string",
        "number": 0
      },
      "client_id": 0,
      "order_flags": 0,
      "clob_pair_id": 0
    },
    "side": "SIDE_UNSPECIFIED",
    "quantums": "string",
    "subticks": "string",
    "good_til_block": 0,
    "good_til_block_time": 0,
    "time_in_force": "TIME_IN_FORCE_UNSPECIFIED",
    "reduce_only": true,
    "client_metadata": 0,
    "condition_type": "CONDITION_TYPE_UNSPECIFIED",
    "conditional_order_trigger_subticks": "string"
  },
  "placement_status": "ORDER_PLACEMENT_STATUS_UNSPECIFIED"
}
 

OrderPlace messages contain the order placed/replaced.

Properties

NameTypeRequiredRestrictionsDescription
orderobjectfalsenoneIndexerOrderV1 represents a single order belonging to a Subaccountfor a particular ClobPair.
» order_idobjectfalsenoneThe unique ID of this order. Meant to be unique across all orders.
»» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
»» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
»» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
»» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
» sidestringfalsenoneRepresents the side of the orderbook the order will be placed on.Note that Side.SIDE_UNSPECIFIED is an invalid order and cannot beplaced on the orderbook. - SIDE_UNSPECIFIED: Default value. This value is invalid and unused. - SIDE_BUY: SIDE_BUY is used to represent a BUY order. - SIDE_SELL: SIDE_SELL is used to represent a SELL order.
» quantumsstring(uint64)falsenoneThe size of this order in base quantums. Must be a multiple ofClobPair.StepBaseQuantums (where ClobPair.Id = orderId.ClobPairId).
» subticksstring(uint64)falsenoneThe price level that this order will be placed at on the orderbook,in subticks. Must be a multiple of ClobPair.SubticksPerTick(where ClobPair.Id = orderId.ClobPairId).
» good_til_blockinteger(int64)falsenoneThe last block this order can be executed at (after which it will beunfillable). Used only for Short-Term orders. If this value is non-zerothen the order is assumed to be a Short-Term order.
» good_til_block_timeinteger(int64)falsenonegood_til_block_time represents the unix timestamp (in seconds) at which astateful order will be considered expired. Thegood_til_block_time is always evaluated against the previous block'sBlockTime instead of the block in which the order is committed. If thisvalue is non-zero then the order is assumed to be a stateful orconditional order.
» time_in_forcestringfalsenoneThe time in force of this order.
» reduce_onlybooleanfalsenoneEnforces that the order can only reduce the size of an existing position.If a ReduceOnly order would change the side of the existing position,its size is reduced to that of the remaining size of the position.If existing orders on the book with ReduceOnlywould already close the position, the least aggressive (out-of-the-money)ReduceOnly orders are resized and canceled first.
» client_metadatainteger(int64)falsenoneSet of bit flags set arbitrarily by clients and ignored by the protocol.Used by indexer to infer information about a placed order.
» condition_typestringfalsenone- CONDITION_TYPE_UNSPECIFIED: CONDITION_TYPE_UNSPECIFIED represents the default behavior where anorder will be placed immediately on the orderbook. - CONDITION_TYPE_STOP_LOSS: CONDITION_TYPE_STOP_LOSS represents a stop order. A stop order willtrigger when the oracle price moves at or above the trigger price forbuys, and at or below the trigger price for sells. - CONDITION_TYPE_TAKE_PROFIT: CONDITION_TYPE_TAKE_PROFIT represents a take profit order. A take profitorder will trigger when the oracle price moves at or below the triggerprice for buys and at or above the trigger price for sells.
» conditional_order_trigger_subticksstring(uint64)falsenoneconditional_order_trigger_subticks represents the price at which this orderwill be triggered. If the condition_type is CONDITION_TYPE_UNSPECIFIED,this value is enforced to be 0. If this value is nonzero, condition_typecannot be CONDITION_TYPE_UNSPECIFIED. Value is in subticks.Must be a multiple of ClobPair.SubticksPerTick (where ClobPair.Id =<br />orderId.ClobPairId).
placement_statusstringfalsenoneOrderPlacementStatus is an enum for the resulting status after an order isplaced. - ORDER_PLACEMENT_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED: A best effort opened order is one that has only been confirmed to beplaced on the dYdX node sending the off-chain update message.The cases where this happens includes:- The dYdX node places an order in it's in-memory orderbook during the CheckTx flow.A best effort placed order may not have been placed on other dYdXnodes including other dYdX validator nodes and may still be excluded infuture order matches. - ORDER_PLACEMENT_STATUS_OPENED: An opened order is one that is confirmed to be placed on all dYdX nodes(discounting dishonest dYdX nodes) and will be included in any futureorder matches.This status is used internally by the indexer and will not be sentout by protocol.

Enumerated Values

PropertyValue
sideSIDE_UNSPECIFIED
sideSIDE_BUY
sideSIDE_SELL
time_in_forceTIME_IN_FORCE_UNSPECIFIED
time_in_forceTIME_IN_FORCE_IOC
time_in_forceTIME_IN_FORCE_POST_ONLY
time_in_forceTIME_IN_FORCE_FILL_OR_KILL
condition_typeCONDITION_TYPE_UNSPECIFIED
condition_typeCONDITION_TYPE_STOP_LOSS
condition_typeCONDITION_TYPE_TAKE_PROFIT
placement_statusORDER_PLACEMENT_STATUS_UNSPECIFIED
placement_statusORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED
placement_statusORDER_PLACEMENT_STATUS_OPENED

dydxprotocol.indexer.off_chain_updates.OrderPlaceV1.OrderPlacementStatus

"ORDER_PLACEMENT_STATUS_UNSPECIFIED"
 

OrderPlacementStatus is an enum for the resulting status after an order is placed.

  • ORDER_PLACEMENT_STATUS_UNSPECIFIED: Default value, this is invalid and unused.
  • ORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED: A best effort opened order is one that has only been confirmed to be placed on the dYdX node sending the off-chain update message. The cases where this happens includes:
  • The dYdX node places an order in it's in-memory orderbook during the CheckTx flow. A best effort placed order may not have been placed on other dYdX nodes including other dYdX validator nodes and may still be excluded in future order matches.
  • ORDER_PLACEMENT_STATUS_OPENED: An opened order is one that is confirmed to be placed on all dYdX nodes (discounting dishonest dYdX nodes) and will be included in any future order matches. This status is used internally by the indexer and will not be sent out by protocol.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneOrderPlacementStatus is an enum for the resulting status after an order isplaced. - ORDER_PLACEMENT_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED: A best effort opened order is one that has only been confirmed to beplaced on the dYdX node sending the off-chain update message.The cases where this happens includes:- The dYdX node places an order in it's in-memory orderbook during the CheckTx flow.A best effort placed order may not have been placed on other dYdXnodes including other dYdX validator nodes and may still be excluded infuture order matches. - ORDER_PLACEMENT_STATUS_OPENED: An opened order is one that is confirmed to be placed on all dYdX nodes(discounting dishonest dYdX nodes) and will be included in any futureorder matches.This status is used internally by the indexer and will not be sentout by protocol.

Enumerated Values

PropertyValue
anonymousORDER_PLACEMENT_STATUS_UNSPECIFIED
anonymousORDER_PLACEMENT_STATUS_BEST_EFFORT_OPENED
anonymousORDER_PLACEMENT_STATUS_OPENED

dydxprotocol.indexer.off_chain_updates.OrderRemoveV1

{
  "removed_order_id": {
    "subaccount_id": {
      "owner": "string",
      "number": 0
    },
    "client_id": 0,
    "order_flags": 0,
    "clob_pair_id": 0
  },
  "reason": "ORDER_REMOVAL_REASON_UNSPECIFIED",
  "removal_status": "ORDER_REMOVAL_STATUS_UNSPECIFIED"
}
 

OrderRemove messages contain the id of the order removed, the reason for the removal and the resulting status from the removal.

Properties

NameTypeRequiredRestrictionsDescription
removed_order_idobjectfalsenoneIndexerOrderId refers to a single order belonging to a Subaccount.
» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
reasonstringfalsenoneOrderRemovalReason is an enum of all the reasons an order was removed. - ORDER_REMOVAL_REASON_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_REASON_EXPIRED: The order was removed due to being expired. - ORDER_REMOVAL_REASON_USER_CANCELED: The order was removed due to being canceled by a user. - ORDER_REMOVAL_REASON_UNDERCOLLATERALIZED: The order was removed due to being undercollateralized. - ORDER_REMOVAL_REASON_INTERNAL_ERROR: The order caused an internal error during order placement and wasremoved. - ORDER_REMOVAL_REASON_SELF_TRADE_ERROR: The order would have matched against another order placed by the samesubaccount and was removed. - ORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER: The order would have matched against maker orders on the orderbookdespite being a post-only order and was removed. - ORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK: The order was an ICO order and would have been placed on the orderbook asresting liquidity and was removed. - ORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED: The order was a fill-or-kill order that could not be fully filled and wasremoved. - ORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE: The order was a reduce-only order that was removed due to either:- being a taker order and fully-filling the order would flip the side of the subaccount's position, in this case the remaining size of the order is removed- being a maker order resting on the book and being removed when either the subaccount's position is closed or flipped sides - ORDER_REMOVAL_REASON_INDEXER_EXPIRED: The order should be expired, according to the Indexer's cached data, butthe Indexer has yet to receive a message to remove the order. In order tokeep the data cached by the Indexer up-to-date and accurate, clear outthe data if it's expired by sending an order removal with this reason.Protocol should never send this reason to Indexer. - ORDER_REMOVAL_REASON_REPLACED: The order has been replaced. - ORDER_REMOVAL_REASON_FULLY_FILLED: The order has been fully-filled. Only sent by the Indexer for statefulorders. - ORDER_REMOVAL_REASON_EQUITY_TIER: The order has been removed since the subaccount does not satisfy theequity tier requirements. - ORDER_REMOVAL_REASON_FINAL_SETTLEMENT: The order has been removed since its ClobPair has entered final settlement.
removal_statusstringfalsenoneOrderRemovalStatus is an enum for the resulting status after an order isremoved. - ORDER_REMOVAL_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED: A best effort canceled order is one that has only been confirmed to beremoved on the dYdX node sending the off-chain update message.The cases where this happens includes:- the order was removed due to the dYdX node receiving a CancelOrder transaction for the order.- the order was removed due to being undercollateralized during optimistic matching.A best effort canceled order may not have been removed on other dYdXnodes including other dYdX validator nodes and may still be included infuture order matches. - ORDER_REMOVAL_STATUS_CANCELED: A canceled order is one that is confirmed to be removed on all dYdX nodes(discounting dishonest dYdX nodes) and will not be included in any futureorder matches.The cases where this happens includes:- the order is expired. - ORDER_REMOVAL_STATUS_FILLED: An order was fully-filled. Only sent by the Indexer for stateful orders.

Enumerated Values

PropertyValue
reasonORDER_REMOVAL_REASON_UNSPECIFIED
reasonORDER_REMOVAL_REASON_EXPIRED
reasonORDER_REMOVAL_REASON_USER_CANCELED
reasonORDER_REMOVAL_REASON_UNDERCOLLATERALIZED
reasonORDER_REMOVAL_REASON_INTERNAL_ERROR
reasonORDER_REMOVAL_REASON_SELF_TRADE_ERROR
reasonORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER
reasonORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK
reasonORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED
reasonORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE
reasonORDER_REMOVAL_REASON_INDEXER_EXPIRED
reasonORDER_REMOVAL_REASON_REPLACED
reasonORDER_REMOVAL_REASON_FULLY_FILLED
reasonORDER_REMOVAL_REASON_EQUITY_TIER
reasonORDER_REMOVAL_REASON_FINAL_SETTLEMENT
removal_statusORDER_REMOVAL_STATUS_UNSPECIFIED
removal_statusORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED
removal_statusORDER_REMOVAL_STATUS_CANCELED
removal_statusORDER_REMOVAL_STATUS_FILLED

dydxprotocol.indexer.off_chain_updates.OrderRemoveV1.OrderRemovalStatus

"ORDER_REMOVAL_STATUS_UNSPECIFIED"
 

OrderRemovalStatus is an enum for the resulting status after an order is removed.

  • ORDER_REMOVAL_STATUS_UNSPECIFIED: Default value, this is invalid and unused.
  • ORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED: A best effort canceled order is one that has only been confirmed to be removed on the dYdX node sending the off-chain update message. The cases where this happens includes:
  • the order was removed due to the dYdX node receiving a CancelOrder transaction for the order.
  • the order was removed due to being undercollateralized during optimistic matching. A best effort canceled order may not have been removed on other dYdX nodes including other dYdX validator nodes and may still be included in future order matches.
  • ORDER_REMOVAL_STATUS_CANCELED: A canceled order is one that is confirmed to be removed on all dYdX nodes (discounting dishonest dYdX nodes) and will not be included in any future order matches. The cases where this happens includes:
  • the order is expired.
  • ORDER_REMOVAL_STATUS_FILLED: An order was fully-filled. Only sent by the Indexer for stateful orders.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneOrderRemovalStatus is an enum for the resulting status after an order isremoved. - ORDER_REMOVAL_STATUS_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED: A best effort canceled order is one that has only been confirmed to beremoved on the dYdX node sending the off-chain update message.The cases where this happens includes:- the order was removed due to the dYdX node receiving a CancelOrder transaction for the order.- the order was removed due to being undercollateralized during optimistic matching.A best effort canceled order may not have been removed on other dYdXnodes including other dYdX validator nodes and may still be included infuture order matches. - ORDER_REMOVAL_STATUS_CANCELED: A canceled order is one that is confirmed to be removed on all dYdX nodes(discounting dishonest dYdX nodes) and will not be included in any futureorder matches.The cases where this happens includes:- the order is expired. - ORDER_REMOVAL_STATUS_FILLED: An order was fully-filled. Only sent by the Indexer for stateful orders.

Enumerated Values

PropertyValue
anonymousORDER_REMOVAL_STATUS_UNSPECIFIED
anonymousORDER_REMOVAL_STATUS_BEST_EFFORT_CANCELED
anonymousORDER_REMOVAL_STATUS_CANCELED
anonymousORDER_REMOVAL_STATUS_FILLED

dydxprotocol.indexer.off_chain_updates.OrderUpdateV1

{
  "order_id": {
    "subaccount_id": {
      "owner": "string",
      "number": 0
    },
    "client_id": 0,
    "order_flags": 0,
    "clob_pair_id": 0
  },
  "total_filled_quantums": "string"
}
 

OrderUpdate messages contain the id of the order being updated, and the updated total filled quantums of the order.

Properties

NameTypeRequiredRestrictionsDescription
order_idobjectfalsenoneIndexerOrderId refers to a single order belonging to a Subaccount.
» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
total_filled_quantumsstring(uint64)falsenonenone

dydxprotocol.indexer.protocol.v1.IndexerOrder

{
  "order_id": {
    "subaccount_id": {
      "owner": "string",
      "number": 0
    },
    "client_id": 0,
    "order_flags": 0,
    "clob_pair_id": 0
  },
  "side": "SIDE_UNSPECIFIED",
  "quantums": "string",
  "subticks": "string",
  "good_til_block": 0,
  "good_til_block_time": 0,
  "time_in_force": "TIME_IN_FORCE_UNSPECIFIED",
  "reduce_only": true,
  "client_metadata": 0,
  "condition_type": "CONDITION_TYPE_UNSPECIFIED",
  "conditional_order_trigger_subticks": "string"
}
 

IndexerOrderV1 represents a single order belonging to a Subaccount for a particular ClobPair.

Properties

NameTypeRequiredRestrictionsDescription
order_idobjectfalsenoneThe unique ID of this order. Meant to be unique across all orders.
» subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
» client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
» order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
» clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.
sidestringfalsenoneRepresents the side of the orderbook the order will be placed on.Note that Side.SIDE_UNSPECIFIED is an invalid order and cannot beplaced on the orderbook. - SIDE_UNSPECIFIED: Default value. This value is invalid and unused. - SIDE_BUY: SIDE_BUY is used to represent a BUY order. - SIDE_SELL: SIDE_SELL is used to represent a SELL order.
quantumsstring(uint64)falsenoneThe size of this order in base quantums. Must be a multiple ofClobPair.StepBaseQuantums (where ClobPair.Id = orderId.ClobPairId).
subticksstring(uint64)falsenoneThe price level that this order will be placed at on the orderbook,in subticks. Must be a multiple of ClobPair.SubticksPerTick(where ClobPair.Id = orderId.ClobPairId).
good_til_blockinteger(int64)falsenoneThe last block this order can be executed at (after which it will beunfillable). Used only for Short-Term orders. If this value is non-zerothen the order is assumed to be a Short-Term order.
good_til_block_timeinteger(int64)falsenonegood_til_block_time represents the unix timestamp (in seconds) at which astateful order will be considered expired. Thegood_til_block_time is always evaluated against the previous block'sBlockTime instead of the block in which the order is committed. If thisvalue is non-zero then the order is assumed to be a stateful orconditional order.
time_in_forcestringfalsenoneThe time in force of this order.
reduce_onlybooleanfalsenoneEnforces that the order can only reduce the size of an existing position.If a ReduceOnly order would change the side of the existing position,its size is reduced to that of the remaining size of the position.If existing orders on the book with ReduceOnlywould already close the position, the least aggressive (out-of-the-money)ReduceOnly orders are resized and canceled first.
client_metadatainteger(int64)falsenoneSet of bit flags set arbitrarily by clients and ignored by the protocol.Used by indexer to infer information about a placed order.
condition_typestringfalsenone- CONDITION_TYPE_UNSPECIFIED: CONDITION_TYPE_UNSPECIFIED represents the default behavior where anorder will be placed immediately on the orderbook. - CONDITION_TYPE_STOP_LOSS: CONDITION_TYPE_STOP_LOSS represents a stop order. A stop order willtrigger when the oracle price moves at or above the trigger price forbuys, and at or below the trigger price for sells. - CONDITION_TYPE_TAKE_PROFIT: CONDITION_TYPE_TAKE_PROFIT represents a take profit order. A take profitorder will trigger when the oracle price moves at or below the triggerprice for buys and at or above the trigger price for sells.
conditional_order_trigger_subticksstring(uint64)falsenoneconditional_order_trigger_subticks represents the price at which this orderwill be triggered. If the condition_type is CONDITION_TYPE_UNSPECIFIED,this value is enforced to be 0. If this value is nonzero, condition_typecannot be CONDITION_TYPE_UNSPECIFIED. Value is in subticks.Must be a multiple of ClobPair.SubticksPerTick (where ClobPair.Id =<br />orderId.ClobPairId).

Enumerated Values

PropertyValue
sideSIDE_UNSPECIFIED
sideSIDE_BUY
sideSIDE_SELL
time_in_forceTIME_IN_FORCE_UNSPECIFIED
time_in_forceTIME_IN_FORCE_IOC
time_in_forceTIME_IN_FORCE_POST_ONLY
time_in_forceTIME_IN_FORCE_FILL_OR_KILL
condition_typeCONDITION_TYPE_UNSPECIFIED
condition_typeCONDITION_TYPE_STOP_LOSS
condition_typeCONDITION_TYPE_TAKE_PROFIT

dydxprotocol.indexer.protocol.v1.IndexerOrder.ConditionType

"CONDITION_TYPE_UNSPECIFIED"
 
  • CONDITION_TYPE_UNSPECIFIED: CONDITION_TYPE_UNSPECIFIED represents the default behavior where an order will be placed immediately on the orderbook.
  • CONDITION_TYPE_STOP_LOSS: CONDITION_TYPE_STOP_LOSS represents a stop order. A stop order will trigger when the oracle price moves at or above the trigger price for buys, and at or below the trigger price for sells.
  • CONDITION_TYPE_TAKE_PROFIT: CONDITION_TYPE_TAKE_PROFIT represents a take profit order. A take profit order will trigger when the oracle price moves at or below the trigger price for buys and at or above the trigger price for sells.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenone- CONDITION_TYPE_UNSPECIFIED: CONDITION_TYPE_UNSPECIFIED represents the default behavior where anorder will be placed immediately on the orderbook. - CONDITION_TYPE_STOP_LOSS: CONDITION_TYPE_STOP_LOSS represents a stop order. A stop order willtrigger when the oracle price moves at or above the trigger price forbuys, and at or below the trigger price for sells. - CONDITION_TYPE_TAKE_PROFIT: CONDITION_TYPE_TAKE_PROFIT represents a take profit order. A take profitorder will trigger when the oracle price moves at or below the triggerprice for buys and at or above the trigger price for sells.

Enumerated Values

PropertyValue
anonymousCONDITION_TYPE_UNSPECIFIED
anonymousCONDITION_TYPE_STOP_LOSS
anonymousCONDITION_TYPE_TAKE_PROFIT

dydxprotocol.indexer.protocol.v1.IndexerOrder.Side

"SIDE_UNSPECIFIED"
 

Represents the side of the orderbook the order will be placed on. Note that Side.SIDE_UNSPECIFIED is an invalid order and cannot be placed on the orderbook.

  • SIDE_UNSPECIFIED: Default value. This value is invalid and unused.
  • SIDE_BUY: SIDE_BUY is used to represent a BUY order.
  • SIDE_SELL: SIDE_SELL is used to represent a SELL order.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneRepresents the side of the orderbook the order will be placed on.Note that Side.SIDE_UNSPECIFIED is an invalid order and cannot beplaced on the orderbook. - SIDE_UNSPECIFIED: Default value. This value is invalid and unused. - SIDE_BUY: SIDE_BUY is used to represent a BUY order. - SIDE_SELL: SIDE_SELL is used to represent a SELL order.

Enumerated Values

PropertyValue
anonymousSIDE_UNSPECIFIED
anonymousSIDE_BUY
anonymousSIDE_SELL

dydxprotocol.indexer.protocol.v1.IndexerOrder.TimeInForce

"TIME_IN_FORCE_UNSPECIFIED"
 

TimeInForce indicates how long an order will remain active before it is executed or expires.

  • TIME_IN_FORCE_UNSPECIFIED: TIME_IN_FORCE_UNSPECIFIED represents the default behavior where an order will first match with existing orders on the book, and any remaining size will be added to the book as a maker order.
  • TIME_IN_FORCE_IOC: TIME_IN_FORCE_IOC enforces that an order only be matched with maker orders on the book. If the order has remaining size after matching with existing orders on the book, the remaining size is not placed on the book.
  • TIME_IN_FORCE_POST_ONLY: TIME_IN_FORCE_POST_ONLY enforces that an order only be placed on the book as a maker order. Note this means that validators will cancel any newly-placed post only orders that would cross with other maker orders.
  • TIME_IN_FORCE_FILL_OR_KILL: TIME_IN_FORCE_FILL_OR_KILL enforces that an order will either be filled completely and immediately by maker orders on the book or canceled if the entire amount can‘t be matched.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneTimeInForce indicates how long an order will remain active before itis executed or expires. - TIME_IN_FORCE_UNSPECIFIED: TIME_IN_FORCE_UNSPECIFIED represents the default behavior where anorder will first match with existing orders on the book, and anyremaining size will be added to the book as a maker order. - TIME_IN_FORCE_IOC: TIME_IN_FORCE_IOC enforces that an order only be matched withmaker orders on the book. If the order has remaining size aftermatching with existing orders on the book, the remaining sizeis not placed on the book. - TIME_IN_FORCE_POST_ONLY: TIME_IN_FORCE_POST_ONLY enforces that an order only be placedon the book as a maker order. Note this means that validators will cancelany newly-placed post only orders that would cross with other makerorders. - TIME_IN_FORCE_FILL_OR_KILL: TIME_IN_FORCE_FILL_OR_KILL enforces that an order will either be filledcompletely and immediately by maker orders on the book or canceled if theentire amount can‘t be matched.

Enumerated Values

PropertyValue
anonymousTIME_IN_FORCE_UNSPECIFIED
anonymousTIME_IN_FORCE_IOC
anonymousTIME_IN_FORCE_POST_ONLY
anonymousTIME_IN_FORCE_FILL_OR_KILL

dydxprotocol.indexer.protocol.v1.IndexerOrderId

{
  "subaccount_id": {
    "owner": "string",
    "number": 0
  },
  "client_id": 0,
  "order_flags": 0,
  "clob_pair_id": 0
}
 

IndexerOrderId refers to a single order belonging to a Subaccount.

Properties

NameTypeRequiredRestrictionsDescription
subaccount_idobjectfalsenoneThe subaccount ID that opened this order.Note that this field has gogoproto.nullable = false so that it isgenerated as a value instead of a pointer. This is because the OrderIdproto is used as a key within maps, and map comparisons will comparepointers for equality (when the desired behavior is to compare the values).
» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
» numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).
client_idinteger(int64)falsenoneThe client ID of this order, unique with respect to the specificsub account (I.E., the same subaccount can't have two orders withthe same ClientId).
order_flagsinteger(int64)falsenoneorder_flags represent order flags for the order. This field is invalid ifit's greater than 127 (larger than one byte). Each bit in the first byterepresents a different flag. Currently only two flags are supported.Starting from the bit after the most MSB (note that the MSB is used inproto varint encoding, and therefore cannot be used): Bit 1 is set if thisorder is a Long-Term order (0x40, or 64 as a uint8). Bit 2 is set if thisorder is a Conditional order (0x20, or 32 as a uint8).If neither bit is set, the order is assumed to be a Short-Term order.If both bits are set or bits other than the 2nd and 3rd are set, the orderID is invalid.
clob_pair_idinteger(int64)falsenoneID of the CLOB the order is created for.

dydxprotocol.indexer.protocol.v1.IndexerSubaccountId

{
  "owner": "string",
  "number": 0
}
 

IndexerSubaccountId defines a unique identifier for a Subaccount.

Properties

NameTypeRequiredRestrictionsDescription
ownerstringfalsenoneThe address of the wallet that owns this subaccount.
numberinteger(int64)falsenone< 128 Since 128 should be enough to start and it fits within1 Byte (1 Bit needed to indicate that the first byte is the last).

dydxprotocol.indexer.shared.OrderRemovalReason

"ORDER_REMOVAL_REASON_UNSPECIFIED"
 

OrderRemovalReason is an enum of all the reasons an order was removed.

  • ORDER_REMOVAL_REASON_UNSPECIFIED: Default value, this is invalid and unused.
  • ORDER_REMOVAL_REASON_EXPIRED: The order was removed due to being expired.
  • ORDER_REMOVAL_REASON_USER_CANCELED: The order was removed due to being canceled by a user.
  • ORDER_REMOVAL_REASON_UNDERCOLLATERALIZED: The order was removed due to being undercollateralized.
  • ORDER_REMOVAL_REASON_INTERNAL_ERROR: The order caused an internal error during order placement and was removed.
  • ORDER_REMOVAL_REASON_SELF_TRADE_ERROR: The order would have matched against another order placed by the same subaccount and was removed.
  • ORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER: The order would have matched against maker orders on the orderbook despite being a post-only order and was removed.
  • ORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK: The order was an ICO order and would have been placed on the orderbook as resting liquidity and was removed.
  • ORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED: The order was a fill-or-kill order that could not be fully filled and was removed.
  • ORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE: The order was a reduce-only order that was removed due to either:
  • being a taker order and fully-filling the order would flip the side of the subaccount's position, in this case the remaining size of the order is removed
  • being a maker order resting on the book and being removed when either the subaccount's position is closed or flipped sides
  • ORDER_REMOVAL_REASON_INDEXER_EXPIRED: The order should be expired, according to the Indexer's cached data, but the Indexer has yet to receive a message to remove the order. In order to keep the data cached by the Indexer up-to-date and accurate, clear out the data if it's expired by sending an order removal with this reason. Protocol should never send this reason to Indexer.
  • ORDER_REMOVAL_REASON_REPLACED: The order has been replaced.
  • ORDER_REMOVAL_REASON_FULLY_FILLED: The order has been fully-filled. Only sent by the Indexer for stateful orders.
  • ORDER_REMOVAL_REASON_EQUITY_TIER: The order has been removed since the subaccount does not satisfy the equity tier requirements.
  • ORDER_REMOVAL_REASON_FINAL_SETTLEMENT: The order has been removed since its ClobPair has entered final settlement.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneOrderRemovalReason is an enum of all the reasons an order was removed. - ORDER_REMOVAL_REASON_UNSPECIFIED: Default value, this is invalid and unused. - ORDER_REMOVAL_REASON_EXPIRED: The order was removed due to being expired. - ORDER_REMOVAL_REASON_USER_CANCELED: The order was removed due to being canceled by a user. - ORDER_REMOVAL_REASON_UNDERCOLLATERALIZED: The order was removed due to being undercollateralized. - ORDER_REMOVAL_REASON_INTERNAL_ERROR: The order caused an internal error during order placement and wasremoved. - ORDER_REMOVAL_REASON_SELF_TRADE_ERROR: The order would have matched against another order placed by the samesubaccount and was removed. - ORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER: The order would have matched against maker orders on the orderbookdespite being a post-only order and was removed. - ORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK: The order was an ICO order and would have been placed on the orderbook asresting liquidity and was removed. - ORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED: The order was a fill-or-kill order that could not be fully filled and wasremoved. - ORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE: The order was a reduce-only order that was removed due to either:- being a taker order and fully-filling the order would flip the side of the subaccount's position, in this case the remaining size of the order is removed- being a maker order resting on the book and being removed when either the subaccount's position is closed or flipped sides - ORDER_REMOVAL_REASON_INDEXER_EXPIRED: The order should be expired, according to the Indexer's cached data, butthe Indexer has yet to receive a message to remove the order. In order tokeep the data cached by the Indexer up-to-date and accurate, clear outthe data if it's expired by sending an order removal with this reason.Protocol should never send this reason to Indexer. - ORDER_REMOVAL_REASON_REPLACED: The order has been replaced. - ORDER_REMOVAL_REASON_FULLY_FILLED: The order has been fully-filled. Only sent by the Indexer for statefulorders. - ORDER_REMOVAL_REASON_EQUITY_TIER: The order has been removed since the subaccount does not satisfy theequity tier requirements. - ORDER_REMOVAL_REASON_FINAL_SETTLEMENT: The order has been removed since its ClobPair has entered final settlement.

Enumerated Values

PropertyValue
anonymousORDER_REMOVAL_REASON_UNSPECIFIED
anonymousORDER_REMOVAL_REASON_EXPIRED
anonymousORDER_REMOVAL_REASON_USER_CANCELED
anonymousORDER_REMOVAL_REASON_UNDERCOLLATERALIZED
anonymousORDER_REMOVAL_REASON_INTERNAL_ERROR
anonymousORDER_REMOVAL_REASON_SELF_TRADE_ERROR
anonymousORDER_REMOVAL_REASON_POST_ONLY_WOULD_CROSS_MAKER_ORDER
anonymousORDER_REMOVAL_REASON_IMMEDIATE_OR_CANCEL_WOULD_REST_ON_BOOK
anonymousORDER_REMOVAL_REASON_FOK_ORDER_COULD_NOT_BE_FULLY_FULLED
anonymousORDER_REMOVAL_REASON_REDUCE_ONLY_RESIZE
anonymousORDER_REMOVAL_REASON_INDEXER_EXPIRED
anonymousORDER_REMOVAL_REASON_REPLACED
anonymousORDER_REMOVAL_REASON_FULLY_FILLED
anonymousORDER_REMOVAL_REASON_EQUITY_TIER
anonymousORDER_REMOVAL_REASON_FINAL_SETTLEMENT

dydxprotocol.subaccounts.SubaccountId

{
  "owner": "string",
  "number": 0
}
 

SubaccountId defines a unique identifier for a Subaccount.

Properties

NameTypeRequiredRestrictionsDescription
ownerstringfalsenoneThe address of the wallet that owns this subaccount.
numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.

grpc.gateway.runtime.StreamError

{
  "grpc_code": 0,
  "http_code": 0,
  "message": "string",
  "http_status": "string",
  "details": [
    {
      "type_url": "string",
      "value": "string"
    }
  ]
}
 

Properties

NameTypeRequiredRestrictionsDescription
grpc_codeinteger(int32)falsenonenone
http_codeinteger(int32)falsenonenone
messagestringfalsenonenone
http_statusstringfalsenonenone
details[object]falsenonenone
» type_urlstringfalsenonenone
» valuestring(byte)falsenonenone

dydxprotocol.delaymsg.DelayedMessage

{
  "id": 0,
  "msg": {
    "type_url": "string",
    "value": "string"
  },
  "block_height": 0
}
 

DelayedMessage is a message that is delayed until a certain block height.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneThe ID of the delayed message.
msgobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
block_heightinteger(int64)falsenoneThe block height at which the message should be executed.

dydxprotocol.delaymsg.QueryBlockMessageIdsResponse

{
  "message_ids": [
    0
  ]
}
 

QueryGetBlockMessageIdsResponse is the response type for the BlockMessageIds RPC method.

Properties

NameTypeRequiredRestrictionsDescription
message_ids[integer]falsenonenone

dydxprotocol.delaymsg.QueryMessageResponse

{
  "message": {
    "id": 0,
    "msg": {
      "type_url": "string",
      "value": "string"
    },
    "block_height": 0
  }
}
 

QueryGetMessageResponse is the response type for the Message RPC method.

Properties

NameTypeRequiredRestrictionsDescription
messageobjectfalsenoneDelayedMessage is a message that is delayed until a certain block height.
» idinteger(int64)falsenoneThe ID of the delayed message.
» msgobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» block_heightinteger(int64)falsenoneThe block height at which the message should be executed.

dydxprotocol.delaymsg.QueryNextDelayedMessageIdResponse

{
  "next_delayed_message_id": 0
}
 

QueryNextDelayedMessageIdResponse is the response type for the NextDelayedMessageId RPC method.

Properties

NameTypeRequiredRestrictionsDescription
next_delayed_message_idinteger(int64)falsenonenone

dydxprotocol.epochs.EpochInfo

{
  "name": "string",
  "next_tick": 0,
  "duration": 0,
  "current_epoch": 0,
  "current_epoch_start_block": 0,
  "is_initialized": true,
  "fast_forward_next_tick": true
}
 

EpochInfo stores metadata of an epoch timer.

Properties

NameTypeRequiredRestrictionsDescription
namestringfalsenonename is the unique identifier.
next_tickinteger(int64)falsenonenext_tick indicates when the next epoch starts (in Unix Epoch seconds),if EpochInfo has been initialized.If EpochInfo is not initialized yet, next_tick indicates the earliestinitialization time (see is_initialized below).
durationinteger(int64)falsenoneduration of the epoch in seconds.
current_epochinteger(int64)falsenonecurrent epoch is the number of the current epoch.0 if next_tick has never been reached, positive otherwise.
current_epoch_start_blockinteger(int64)falsenonecurrent_epoch_start_block indicates the block height when the currentepoch started. 0 if current_epoch is 0.
is_initializedbooleanfalsenonenone
fast_forward_next_tickbooleanfalsenonefast_forward_next_tick specifies whether during initialization, next_tickshould be fast-forwarded to be greater than the current block time.If false, the original next_tick value isunchanged during initialization.If true, next_tick will be set to the smallest value x greater thanthe current block time such that (x - next_tick) % duration = 0.

dydxprotocol.epochs.QueryEpochInfoAllResponse

{
  "epoch_info": [
    {
      "name": "string",
      "next_tick": 0,
      "duration": 0,
      "current_epoch": 0,
      "current_epoch_start_block": 0,
      "is_initialized": true,
      "fast_forward_next_tick": true
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryEpochInfoAllResponse is response type for the AllEpochInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
epoch_info[object]falsenonenone
» namestringfalsenonename is the unique identifier.
» next_tickinteger(int64)falsenonenext_tick indicates when the next epoch starts (in Unix Epoch seconds),if EpochInfo has been initialized.If EpochInfo is not initialized yet, next_tick indicates the earliestinitialization time (see is_initialized below).
» durationinteger(int64)falsenoneduration of the epoch in seconds.
» current_epochinteger(int64)falsenonecurrent epoch is the number of the current epoch.0 if next_tick has never been reached, positive otherwise.
» current_epoch_start_blockinteger(int64)falsenonecurrent_epoch_start_block indicates the block height when the currentepoch started. 0 if current_epoch is 0.
» is_initializedbooleanfalsenonenone
» fast_forward_next_tickbooleanfalsenonefast_forward_next_tick specifies whether during initialization, next_tickshould be fast-forwarded to be greater than the current block time.If false, the original next_tick value isunchanged during initialization.If true, next_tick will be set to the smallest value x greater thanthe current block time such that (x - next_tick) % duration = 0.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

dydxprotocol.epochs.QueryEpochInfoResponse

{
  "epoch_info": {
    "name": "string",
    "next_tick": 0,
    "duration": 0,
    "current_epoch": 0,
    "current_epoch_start_block": 0,
    "is_initialized": true,
    "fast_forward_next_tick": true
  }
}
 

QueryEpochInfoResponse is response type for the GetEpochInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
epoch_infoobjectfalsenoneEpochInfo stores metadata of an epoch timer.
» namestringfalsenonename is the unique identifier.
» next_tickinteger(int64)falsenonenext_tick indicates when the next epoch starts (in Unix Epoch seconds),if EpochInfo has been initialized.If EpochInfo is not initialized yet, next_tick indicates the earliestinitialization time (see is_initialized below).
» durationinteger(int64)falsenoneduration of the epoch in seconds.
» current_epochinteger(int64)falsenonecurrent epoch is the number of the current epoch.0 if next_tick has never been reached, positive otherwise.
» current_epoch_start_blockinteger(int64)falsenonecurrent_epoch_start_block indicates the block height when the currentepoch started. 0 if current_epoch is 0.
» is_initializedbooleanfalsenonenone
» fast_forward_next_tickbooleanfalsenonefast_forward_next_tick specifies whether during initialization, next_tickshould be fast-forwarded to be greater than the current block time.If false, the original next_tick value isunchanged during initialization.If true, next_tick will be set to the smallest value x greater thanthe current block time such that (x - next_tick) % duration = 0.

dydxprotocol.feetiers.PerpetualFeeParams

{
  "tiers": [
    {
      "name": "string",
      "absolute_volume_requirement": "string",
      "total_volume_share_requirement_ppm": 0,
      "maker_volume_share_requirement_ppm": 0,
      "maker_fee_ppm": 0,
      "taker_fee_ppm": 0
    }
  ]
}
 

PerpetualFeeParams defines the parameters for perpetual fees.

Properties

NameTypeRequiredRestrictionsDescription
tiers[object]falsenoneSorted fee tiers (lowest requirements first).
» A fee tier for perpetualsobjectfalsenonenone
»» namestringfalsenoneHuman-readable name of the tier, e.g. "Gold".
»» absolute_volume_requirementstring(uint64)falsenoneThe trader's absolute volume requirement in quote quantums.
»» total_volume_share_requirement_ppminteger(int64)falsenoneThe total volume share requirement.
»» maker_volume_share_requirement_ppminteger(int64)falsenoneThe maker volume share requirement.
»» maker_fee_ppminteger(int32)falsenoneThe maker fee once this tier is reached.
»» taker_fee_ppminteger(int32)falsenoneThe taker fee once this tier is reached.

dydxprotocol.feetiers.PerpetualFeeTier

{
  "name": "string",
  "absolute_volume_requirement": "string",
  "total_volume_share_requirement_ppm": 0,
  "maker_volume_share_requirement_ppm": 0,
  "maker_fee_ppm": 0,
  "taker_fee_ppm": 0
}
 

A fee tier for perpetuals

Properties

NameTypeRequiredRestrictionsDescription
namestringfalsenoneHuman-readable name of the tier, e.g. "Gold".
absolute_volume_requirementstring(uint64)falsenoneThe trader's absolute volume requirement in quote quantums.
total_volume_share_requirement_ppminteger(int64)falsenoneThe total volume share requirement.
maker_volume_share_requirement_ppminteger(int64)falsenoneThe maker volume share requirement.
maker_fee_ppminteger(int32)falsenoneThe maker fee once this tier is reached.
taker_fee_ppminteger(int32)falsenoneThe taker fee once this tier is reached.

dydxprotocol.feetiers.QueryPerpetualFeeParamsResponse

{
  "params": {
    "tiers": [
      {
        "name": "string",
        "absolute_volume_requirement": "string",
        "total_volume_share_requirement_ppm": 0,
        "maker_volume_share_requirement_ppm": 0,
        "maker_fee_ppm": 0,
        "taker_fee_ppm": 0
      }
    ]
  }
}
 

QueryPerpetualFeeParamsResponse is a response type for the PerpetualFeeParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenonePerpetualFeeParams defines the parameters for perpetual fees.
» tiers[object]falsenoneSorted fee tiers (lowest requirements first).
»» A fee tier for perpetualsobjectfalsenonenone
»»» namestringfalsenoneHuman-readable name of the tier, e.g. "Gold".
»»» absolute_volume_requirementstring(uint64)falsenoneThe trader's absolute volume requirement in quote quantums.
»»» total_volume_share_requirement_ppminteger(int64)falsenoneThe total volume share requirement.
»»» maker_volume_share_requirement_ppminteger(int64)falsenoneThe maker volume share requirement.
»»» maker_fee_ppminteger(int32)falsenoneThe maker fee once this tier is reached.
»»» taker_fee_ppminteger(int32)falsenoneThe taker fee once this tier is reached.

dydxprotocol.feetiers.QueryUserFeeTierResponse

{
  "index": 0,
  "tier": {
    "name": "string",
    "absolute_volume_requirement": "string",
    "total_volume_share_requirement_ppm": 0,
    "maker_volume_share_requirement_ppm": 0,
    "maker_fee_ppm": 0,
    "taker_fee_ppm": 0
  }
}
 

QueryUserFeeTierResponse is a request type for the UserFeeTier RPC method.

Properties

NameTypeRequiredRestrictionsDescription
indexinteger(int64)falsenoneIndex of the fee tier in the list queried from PerpetualFeeParams.
tierobjectfalsenonenone
» namestringfalsenoneHuman-readable name of the tier, e.g. "Gold".
» absolute_volume_requirementstring(uint64)falsenoneThe trader's absolute volume requirement in quote quantums.
» total_volume_share_requirement_ppminteger(int64)falsenoneThe total volume share requirement.
» maker_volume_share_requirement_ppminteger(int64)falsenoneThe maker volume share requirement.
» maker_fee_ppminteger(int32)falsenoneThe maker fee once this tier is reached.
» taker_fee_ppminteger(int32)falsenoneThe taker fee once this tier is reached.

dydxprotocol.perpetuals.LiquidityTier

{
  "id": 0,
  "name": "string",
  "initial_margin_ppm": 0,
  "maintenance_fraction_ppm": 0,
  "base_position_notional": "string",
  "impact_notional": "string",
  "open_interest_lower_cap": "string",
  "open_interest_upper_cap": "string"
}
 

LiquidityTier stores margin information.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneUnique id.
namestringfalsenoneThe name of the tier purely for mnemonic purposes, e.g. "Gold".
initial_margin_ppminteger(int64)falsenoneThe margin fraction needed to open a position.In parts-per-million.
maintenance_fraction_ppminteger(int64)falsenoneThe fraction of the initial-margin that the maintenance-margin is,e.g. 50%. In parts-per-million.
base_position_notionalstring(uint64)falsenoneThe maximum position size at which the margin requirements arenot increased over the default values. Above this position size,the margin requirements increase at a rate of sqrt(size).Deprecated since v3.x.
impact_notionalstring(uint64)falsenoneThe impact notional amount (in quote quantums) is used to determine impactbid/ask prices and its recommended value is 500 USDC / initial marginfraction.- Impact bid price = average execution price for a market sell of theimpact notional value.- Impact ask price = average execution price for a market buy of theimpact notional value.
open_interest_lower_capstring(uint64)falsenoneLower cap for Open Interest Margin Fracton (OIMF), in quote quantums.IMF is not affected when OI <= open_interest_lower_cap.
open_interest_upper_capstring(uint64)falsenoneUpper cap for Open Interest Margin Fracton (OIMF), in quote quantums.IMF scales linearly to 100% as OI approaches open_interest_upper_cap.If zero, then the IMF does not scale with OI.

dydxprotocol.perpetuals.MarketPremiums

{
  "perpetual_id": 0,
  "premiums": [
    0
  ]
}
 

MarketPremiums stores a list of premiums for a single perpetual market.

Properties

NameTypeRequiredRestrictionsDescription
perpetual_idinteger(int64)falsenoneperpetual_id is the Id of the perpetual market.
premiums[integer]falsenonepremiums is a list of premium values for a perpetual market. Since mostpremiums are zeros under "stable" market conditions, only non-zero valuesare stored in this list.

dydxprotocol.perpetuals.Params

{
  "funding_rate_clamp_factor_ppm": 0,
  "premium_vote_clamp_factor_ppm": 0,
  "min_num_votes_per_sample": 0
}
 

Params defines the parameters for x/perpetuals module.

Properties

NameTypeRequiredRestrictionsDescription
funding_rate_clamp_factor_ppminteger(int64)falsenoneFunding rate clamp factor in parts-per-million, used for clamping 8-hourfunding rates according to equation:
premium_vote_clamp_factor_ppminteger(int64)falsenonePremium vote clamp factor in parts-per-million, used for clamping premiumvotes according to equation:
min_num_votes_per_sampleinteger(int64)falsenoneMinimum number of premium votes per premium sample. If number of premiumvotes is smaller than this number, pad with zeros up to this number.

dydxprotocol.perpetuals.Perpetual

{
  "params": {
    "id": 0,
    "ticker": "string",
    "market_id": 0,
    "atomic_resolution": 0,
    "default_funding_ppm": 0,
    "liquidity_tier": 0,
    "market_type": "PERPETUAL_MARKET_TYPE_UNSPECIFIED"
  },
  "funding_index": "string",
  "open_interest": "string"
}
 

Perpetual represents a perpetual on the dYdX exchange.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenonePerpetualParams is the parameters of the perpetual.
» idinteger(int64)falsenoneUnique, sequentially-generated.
» tickerstringfalsenoneThe name of the Perpetual (e.g. BTC-USD).
» market_idinteger(int64)falsenoneThe market associated with this Perpetual. Itacts as the oracle price for the purposes of calculatingcollateral, margin requirements, and funding rates.
» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (size = 1)to a full coin. For example, if AtomicResolution = -8then a PerpetualPosition with size = 1e8 is equivalent toa position size of one full coin.
» default_funding_ppminteger(int32)falsenoneThe default funding payment if there is no price premium. Inparts-per-million.
» liquidity_tierinteger(int64)falsenoneThe liquidity_tier that this perpetual is associated with.
» market_typestringfalsenone- PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type. - PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets. - PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.
funding_indexstring(byte)falsenoneThe current index determined by the cumulative all-timehistory of the funding mechanism. Starts at zero.
open_intereststring(byte)falsenoneTotal size of open long contracts, measured in base_quantums.

Enumerated Values

PropertyValue
market_typePERPETUAL_MARKET_TYPE_UNSPECIFIED
market_typePERPETUAL_MARKET_TYPE_CROSS
market_typePERPETUAL_MARKET_TYPE_ISOLATED

dydxprotocol.perpetuals.PerpetualMarketType

"PERPETUAL_MARKET_TYPE_UNSPECIFIED"
 
  • PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type.
  • PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets.
  • PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenone- PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type. - PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets. - PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.

Enumerated Values

PropertyValue
anonymousPERPETUAL_MARKET_TYPE_UNSPECIFIED
anonymousPERPETUAL_MARKET_TYPE_CROSS
anonymousPERPETUAL_MARKET_TYPE_ISOLATED

dydxprotocol.perpetuals.PerpetualParams

{
  "id": 0,
  "ticker": "string",
  "market_id": 0,
  "atomic_resolution": 0,
  "default_funding_ppm": 0,
  "liquidity_tier": 0,
  "market_type": "PERPETUAL_MARKET_TYPE_UNSPECIFIED"
}
 

PerpetualParams represents the parameters of a perpetual on the dYdX exchange.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneUnique, sequentially-generated.
tickerstringfalsenoneThe name of the Perpetual (e.g. BTC-USD).
market_idinteger(int64)falsenoneThe market associated with this Perpetual. Itacts as the oracle price for the purposes of calculatingcollateral, margin requirements, and funding rates.
atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (size = 1)to a full coin. For example, if AtomicResolution = -8then a PerpetualPosition with size = 1e8 is equivalent toa position size of one full coin.
default_funding_ppminteger(int32)falsenoneThe default funding payment if there is no price premium. Inparts-per-million.
liquidity_tierinteger(int64)falsenoneThe liquidity_tier that this perpetual is associated with.
market_typestringfalsenone- PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type. - PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets. - PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.

Enumerated Values

PropertyValue
market_typePERPETUAL_MARKET_TYPE_UNSPECIFIED
market_typePERPETUAL_MARKET_TYPE_CROSS
market_typePERPETUAL_MARKET_TYPE_ISOLATED

dydxprotocol.perpetuals.PremiumStore

{
  "all_market_premiums": [
    {
      "perpetual_id": 0,
      "premiums": [
        0
      ]
    }
  ],
  "num_premiums": 0
}
 

PremiumStore is a struct to store a perpetual premiums for all perpetual markets. It stores a list of MarketPremiums, each of which corresponds to a perpetual market and stores a list of non-zero premium values for that market. This struct can either be used to store PremiumVotes or PremiumSamples.

Properties

NameTypeRequiredRestrictionsDescription
all_market_premiums[object]falsenoneall_market_premiums a list of MarketPremiums, each corresponding toa perpetual market.
» perpetual_idinteger(int64)falsenoneperpetual_id is the Id of the perpetual market.
» premiums[integer]falsenonepremiums is a list of premium values for a perpetual market. Since mostpremiums are zeros under "stable" market conditions, only non-zero valuesare stored in this list.
num_premiumsinteger(int64)falsenonenumber of rounds where premium values were added. This value indicatesthe total number of premiums (zeros and non-zeros) for eachMarketPremiums struct. Note that in the edge case a perpetual market wasadded in the middle of a epoch, we don't keep a seperate count for thatmarket. This means we treat this market as having zero premiums before itwas added.

dydxprotocol.perpetuals.QueryAllLiquidityTiersResponse

{
  "liquidity_tiers": [
    {
      "id": 0,
      "name": "string",
      "initial_margin_ppm": 0,
      "maintenance_fraction_ppm": 0,
      "base_position_notional": "string",
      "impact_notional": "string",
      "open_interest_lower_cap": "string",
      "open_interest_upper_cap": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllLiquidityTiersResponse is response type for the AllLiquidityTiers RPC method.

Properties

NameTypeRequiredRestrictionsDescription
liquidity_tiers[object]falsenonenone
» idinteger(int64)falsenoneUnique id.
» namestringfalsenoneThe name of the tier purely for mnemonic purposes, e.g. "Gold".
» initial_margin_ppminteger(int64)falsenoneThe margin fraction needed to open a position.In parts-per-million.
» maintenance_fraction_ppminteger(int64)falsenoneThe fraction of the initial-margin that the maintenance-margin is,e.g. 50%. In parts-per-million.
» base_position_notionalstring(uint64)falsenoneThe maximum position size at which the margin requirements arenot increased over the default values. Above this position size,the margin requirements increase at a rate of sqrt(size).Deprecated since v3.x.
» impact_notionalstring(uint64)falsenoneThe impact notional amount (in quote quantums) is used to determine impactbid/ask prices and its recommended value is 500 USDC / initial marginfraction.- Impact bid price = average execution price for a market sell of theimpact notional value.- Impact ask price = average execution price for a market buy of theimpact notional value.
» open_interest_lower_capstring(uint64)falsenoneLower cap for Open Interest Margin Fracton (OIMF), in quote quantums.IMF is not affected when OI <= open_interest_lower_cap.
» open_interest_upper_capstring(uint64)falsenoneUpper cap for Open Interest Margin Fracton (OIMF), in quote quantums.IMF scales linearly to 100% as OI approaches open_interest_upper_cap.If zero, then the IMF does not scale with OI.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

dydxprotocol.perpetuals.QueryAllPerpetualsResponse

{
  "perpetual": [
    {
      "params": {
        "id": 0,
        "ticker": "string",
        "market_id": 0,
        "atomic_resolution": 0,
        "default_funding_ppm": 0,
        "liquidity_tier": 0,
        "market_type": "PERPETUAL_MARKET_TYPE_UNSPECIFIED"
      },
      "funding_index": "string",
      "open_interest": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllPerpetualsResponse is response type for the AllPerpetuals RPC method.

Properties

NameTypeRequiredRestrictionsDescription
perpetual[object]falsenonenone
» paramsobjectfalsenonePerpetualParams is the parameters of the perpetual.
»» idinteger(int64)falsenoneUnique, sequentially-generated.
»» tickerstringfalsenoneThe name of the Perpetual (e.g. BTC-USD).
»» market_idinteger(int64)falsenoneThe market associated with this Perpetual. Itacts as the oracle price for the purposes of calculatingcollateral, margin requirements, and funding rates.
»» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (size = 1)to a full coin. For example, if AtomicResolution = -8then a PerpetualPosition with size = 1e8 is equivalent toa position size of one full coin.
»» default_funding_ppminteger(int32)falsenoneThe default funding payment if there is no price premium. Inparts-per-million.
»» liquidity_tierinteger(int64)falsenoneThe liquidity_tier that this perpetual is associated with.
»» market_typestringfalsenone- PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type. - PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets. - PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.
» funding_indexstring(byte)falsenoneThe current index determined by the cumulative all-timehistory of the funding mechanism. Starts at zero.
» open_intereststring(byte)falsenoneTotal size of open long contracts, measured in base_quantums.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
market_typePERPETUAL_MARKET_TYPE_UNSPECIFIED
market_typePERPETUAL_MARKET_TYPE_CROSS
market_typePERPETUAL_MARKET_TYPE_ISOLATED

dydxprotocol.perpetuals.QueryParamsResponse

{
  "params": {
    "funding_rate_clamp_factor_ppm": 0,
    "premium_vote_clamp_factor_ppm": 0,
    "min_num_votes_per_sample": 0
  }
}
 

QueryParamsResponse is the response type for the Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneParams defines the parameters for x/perpetuals module.
» funding_rate_clamp_factor_ppminteger(int64)falsenoneFunding rate clamp factor in parts-per-million, used for clamping 8-hourfunding rates according to equation:
» premium_vote_clamp_factor_ppminteger(int64)falsenonePremium vote clamp factor in parts-per-million, used for clamping premiumvotes according to equation:
» min_num_votes_per_sampleinteger(int64)falsenoneMinimum number of premium votes per premium sample. If number of premiumvotes is smaller than this number, pad with zeros up to this number.

dydxprotocol.perpetuals.QueryPerpetualResponse

{
  "perpetual": {
    "params": {
      "id": 0,
      "ticker": "string",
      "market_id": 0,
      "atomic_resolution": 0,
      "default_funding_ppm": 0,
      "liquidity_tier": 0,
      "market_type": "PERPETUAL_MARKET_TYPE_UNSPECIFIED"
    },
    "funding_index": "string",
    "open_interest": "string"
  }
}
 

QueryPerpetualResponse is response type for the Perpetual RPC method.

Properties

NameTypeRequiredRestrictionsDescription
perpetualobjectfalsenonePerpetual represents a perpetual on the dYdX exchange.
» paramsobjectfalsenonePerpetualParams is the parameters of the perpetual.
»» idinteger(int64)falsenoneUnique, sequentially-generated.
»» tickerstringfalsenoneThe name of the Perpetual (e.g. BTC-USD).
»» market_idinteger(int64)falsenoneThe market associated with this Perpetual. Itacts as the oracle price for the purposes of calculatingcollateral, margin requirements, and funding rates.
»» atomic_resolutioninteger(int32)falsenoneThe exponent for converting an atomic amount (size = 1)to a full coin. For example, if AtomicResolution = -8then a PerpetualPosition with size = 1e8 is equivalent toa position size of one full coin.
»» default_funding_ppminteger(int32)falsenoneThe default funding payment if there is no price premium. Inparts-per-million.
»» liquidity_tierinteger(int64)falsenoneThe liquidity_tier that this perpetual is associated with.
»» market_typestringfalsenone- PERPETUAL_MARKET_TYPE_UNSPECIFIED: Unspecified market type. - PERPETUAL_MARKET_TYPE_CROSS: Market type for cross margin perpetual markets. - PERPETUAL_MARKET_TYPE_ISOLATED: Market type for isolated margin perpetual markets.
» funding_indexstring(byte)falsenoneThe current index determined by the cumulative all-timehistory of the funding mechanism. Starts at zero.
» open_intereststring(byte)falsenoneTotal size of open long contracts, measured in base_quantums.

Enumerated Values

PropertyValue
market_typePERPETUAL_MARKET_TYPE_UNSPECIFIED
market_typePERPETUAL_MARKET_TYPE_CROSS
market_typePERPETUAL_MARKET_TYPE_ISOLATED

dydxprotocol.perpetuals.QueryPremiumSamplesResponse

{
  "premium_samples": {
    "all_market_premiums": [
      {
        "perpetual_id": 0,
        "premiums": [
          0
        ]
      }
    ],
    "num_premiums": 0
  }
}
 

QueryPremiumSamplesResponse is the response type for the PremiumSamples RPC method.

Properties

NameTypeRequiredRestrictionsDescription
premium_samplesobjectfalsenonePremiumStore is a struct to store a perpetual premiums for allperpetual markets. It stores a list of MarketPremiums, each of whichcorresponds to a perpetual market and stores a list of non-zero premiumvalues for that market.This struct can either be used to store PremiumVotes orPremiumSamples.
» all_market_premiums[object]falsenoneall_market_premiums a list of MarketPremiums, each corresponding toa perpetual market.
»» perpetual_idinteger(int64)falsenoneperpetual_id is the Id of the perpetual market.
»» premiums[integer]falsenonepremiums is a list of premium values for a perpetual market. Since mostpremiums are zeros under "stable" market conditions, only non-zero valuesare stored in this list.
» num_premiumsinteger(int64)falsenonenumber of rounds where premium values were added. This value indicatesthe total number of premiums (zeros and non-zeros) for eachMarketPremiums struct. Note that in the edge case a perpetual market wasadded in the middle of a epoch, we don't keep a seperate count for thatmarket. This means we treat this market as having zero premiums before itwas added.

dydxprotocol.perpetuals.QueryPremiumVotesResponse

{
  "premium_votes": {
    "all_market_premiums": [
      {
        "perpetual_id": 0,
        "premiums": [
          0
        ]
      }
    ],
    "num_premiums": 0
  }
}
 

QueryPremiumVotesResponse is the response type for the PremiumVotes RPC method.

Properties

NameTypeRequiredRestrictionsDescription
premium_votesobjectfalsenonePremiumStore is a struct to store a perpetual premiums for allperpetual markets. It stores a list of MarketPremiums, each of whichcorresponds to a perpetual market and stores a list of non-zero premiumvalues for that market.This struct can either be used to store PremiumVotes orPremiumSamples.
» all_market_premiums[object]falsenoneall_market_premiums a list of MarketPremiums, each corresponding toa perpetual market.
»» perpetual_idinteger(int64)falsenoneperpetual_id is the Id of the perpetual market.
»» premiums[integer]falsenonepremiums is a list of premium values for a perpetual market. Since mostpremiums are zeros under "stable" market conditions, only non-zero valuesare stored in this list.
» num_premiumsinteger(int64)falsenonenumber of rounds where premium values were added. This value indicatesthe total number of premiums (zeros and non-zeros) for eachMarketPremiums struct. Note that in the edge case a perpetual market wasadded in the middle of a epoch, we don't keep a seperate count for thatmarket. This means we treat this market as having zero premiums before itwas added.

dydxprotocol.prices.MarketParam

{
  "id": 0,
  "pair": "string",
  "exponent": 0,
  "min_exchanges": 0,
  "min_price_change_ppm": 0,
  "exchange_config_json": "string"
}
 

MarketParam represents the x/prices configuration for markets, including representing price values, resolving markets on individual exchanges, and generating price updates. This configuration is specific to the quote currency.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneUnique, sequentially-generated value.
pairstringfalsenoneThe human-readable name of the market pair (e.g. BTC-USD).
exponentinteger(int32)falsenoneStatic value. The exponent of the price.For example if Exponent == -5 then a Value of 1,000,000,000represents ``$10,000. Therefore 10 ^ Exponent` represents the smallestprice step (in dollars) that can be recorded.
min_exchangesinteger(int64)falsenoneThe minimum number of exchanges that should be reporting a live price fora price update to be considered valid.
min_price_change_ppminteger(int64)falsenoneThe minimum allowable change in price value that would cause a priceupdate on the network. Measured as 1e-6 (parts per million).
exchange_config_jsonstringfalsenoneA string of json that encodes the configuration for resolving the priceof this market on various exchanges.

dydxprotocol.prices.MarketPrice

{
  "id": 0,
  "exponent": 0,
  "price": "string"
}
 

MarketPrice is used by the application to store/retrieve oracle price.

Properties

NameTypeRequiredRestrictionsDescription
idinteger(int64)falsenoneUnique, sequentially-generated value that matches MarketParam.
exponentinteger(int32)falsenoneStatic value. The exponent of the price. See the comment on the duplicateMarketParam field for more information.
pricestring(uint64)falsenoneThe variable value that is updated by oracle price updates. 0 if it hasnever been updated, >0 otherwise.

dydxprotocol.prices.QueryAllMarketParamsResponse

{
  "market_params": [
    {
      "id": 0,
      "pair": "string",
      "exponent": 0,
      "min_exchanges": 0,
      "min_price_change_ppm": 0,
      "exchange_config_json": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllMarketParamsResponse is response type for the Query/Params AllMarketParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
market_params[object]falsenonenone
» idinteger(int64)falsenoneUnique, sequentially-generated value.
» pairstringfalsenoneThe human-readable name of the market pair (e.g. BTC-USD).
» exponentinteger(int32)falsenoneStatic value. The exponent of the price.For example if Exponent == -5 then a Value of 1,000,000,000represents ``$10,000. Therefore 10 ^ Exponent` represents the smallestprice step (in dollars) that can be recorded.
» min_exchangesinteger(int64)falsenoneThe minimum number of exchanges that should be reporting a live price fora price update to be considered valid.
» min_price_change_ppminteger(int64)falsenoneThe minimum allowable change in price value that would cause a priceupdate on the network. Measured as 1e-6 (parts per million).
» exchange_config_jsonstringfalsenoneA string of json that encodes the configuration for resolving the priceof this market on various exchanges.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

dydxprotocol.prices.QueryAllMarketPricesResponse

{
  "market_prices": [
    {
      "id": 0,
      "exponent": 0,
      "price": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllMarketPricesResponse is response type for the Query/Params AllMarketPrices RPC method.

Properties

NameTypeRequiredRestrictionsDescription
market_prices[object]falsenonenone
» idinteger(int64)falsenoneUnique, sequentially-generated value that matches MarketParam.
» exponentinteger(int32)falsenoneStatic value. The exponent of the price. See the comment on the duplicateMarketParam field for more information.
» pricestring(uint64)falsenoneThe variable value that is updated by oracle price updates. 0 if it hasnever been updated, >0 otherwise.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

dydxprotocol.prices.QueryMarketParamResponse

{
  "market_param": {
    "id": 0,
    "pair": "string",
    "exponent": 0,
    "min_exchanges": 0,
    "min_price_change_ppm": 0,
    "exchange_config_json": "string"
  }
}
 

QueryMarketParamResponse is response type for the Query/Params MarketParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
market_paramobjectfalsenoneMarketParam represents the x/prices configuration for markets, includingrepresenting price values, resolving markets on individual exchanges, andgenerating price updates. This configuration is specific to the quotecurrency.
» idinteger(int64)falsenoneUnique, sequentially-generated value.
» pairstringfalsenoneThe human-readable name of the market pair (e.g. BTC-USD).
» exponentinteger(int32)falsenoneStatic value. The exponent of the price.For example if Exponent == -5 then a Value of 1,000,000,000represents ``$10,000. Therefore 10 ^ Exponent` represents the smallestprice step (in dollars) that can be recorded.
» min_exchangesinteger(int64)falsenoneThe minimum number of exchanges that should be reporting a live price fora price update to be considered valid.
» min_price_change_ppminteger(int64)falsenoneThe minimum allowable change in price value that would cause a priceupdate on the network. Measured as 1e-6 (parts per million).
» exchange_config_jsonstringfalsenoneA string of json that encodes the configuration for resolving the priceof this market on various exchanges.

dydxprotocol.prices.QueryMarketPriceResponse

{
  "market_price": {
    "id": 0,
    "exponent": 0,
    "price": "string"
  }
}
 

QueryMarketPriceResponse is response type for the Query/Params MarketPrice RPC method.

Properties

NameTypeRequiredRestrictionsDescription
market_priceobjectfalsenoneMarketPrice is used by the application to store/retrieve oracle price.
» idinteger(int64)falsenoneUnique, sequentially-generated value that matches MarketParam.
» exponentinteger(int32)falsenoneStatic value. The exponent of the price. See the comment on the duplicateMarketParam field for more information.
» pricestring(uint64)falsenoneThe variable value that is updated by oracle price updates. 0 if it hasnever been updated, >0 otherwise.

dydxprotocol.rewards.Params

{
  "treasury_account": "string",
  "denom": "string",
  "denom_exponent": 0,
  "market_id": 0,
  "fee_multiplier_ppm": 0
}
 

Params defines the parameters for x/rewards module.

Properties

NameTypeRequiredRestrictionsDescription
treasury_accountstringfalsenoneThe module account to distribute rewards from.
denomstringfalsenoneThe denom of the rewards token.
denom_exponentinteger(int32)falsenoneThe exponent of converting one unit of denom to a full coin.For example, denom=uatom, denom_exponent=-6 defines that1 uatom = 10^(-6) ATOM. This conversion is needed since themarket_id retrieves the price of a full coin of the reward token.
market_idinteger(int64)falsenoneThe id of the market that has the price of the rewards token.
fee_multiplier_ppminteger(int64)falsenoneThe amount (in ppm) that fees are multiplied by to getthe maximum rewards amount.

dydxprotocol.rewards.QueryParamsResponse

{
  "params": {
    "treasury_account": "string",
    "denom": "string",
    "denom_exponent": 0,
    "market_id": 0,
    "fee_multiplier_ppm": 0
  }
}
 

QueryParamsResponse is a response type for the Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneParams defines the parameters for x/rewards module.
» treasury_accountstringfalsenoneThe module account to distribute rewards from.
» denomstringfalsenoneThe denom of the rewards token.
» denom_exponentinteger(int32)falsenoneThe exponent of converting one unit of denom to a full coin.For example, denom=uatom, denom_exponent=-6 defines that1 uatom = 10^(-6) ATOM. This conversion is needed since themarket_id retrieves the price of a full coin of the reward token.
» market_idinteger(int64)falsenoneThe id of the market that has the price of the rewards token.
» fee_multiplier_ppminteger(int64)falsenoneThe amount (in ppm) that fees are multiplied by to getthe maximum rewards amount.

dydxprotocol.stats.GlobalStats

{
  "notional_traded": "string"
}
 

GlobalStats stores global stats

Properties

NameTypeRequiredRestrictionsDescription
notional_tradedstring(uint64)falsenonenone

dydxprotocol.stats.Params

{
  "window_duration": "string"
}
 

Params defines the parameters for x/stats module.

Properties

NameTypeRequiredRestrictionsDescription
window_durationstringfalsenoneThe desired number of seconds in the look-back window.

dydxprotocol.stats.QueryGlobalStatsResponse

{
  "stats": {
    "notional_traded": "string"
  }
}
 

QueryGlobalStatsResponse is a response type for the GlobalStats RPC method.

Properties

NameTypeRequiredRestrictionsDescription
statsobjectfalsenonenone
» notional_tradedstring(uint64)falsenonenone

dydxprotocol.stats.QueryParamsResponse

{
  "params": {
    "window_duration": "string"
  }
}
 

QueryParamsResponse is a response type for the Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneParams defines the parameters for x/stats module.
» window_durationstringfalsenoneThe desired number of seconds in the look-back window.

dydxprotocol.stats.QueryStatsMetadataResponse

{
  "metadata": {
    "trailing_epoch": 0
  }
}
 

QueryStatsMetadataResponse is a response type for the StatsMetadata RPC method.

Properties

NameTypeRequiredRestrictionsDescription
metadataobjectfalsenonenone
» trailing_epochinteger(int64)falsenoneThe oldest epoch that is included in the stats. The next epoch to beremoved from the window.

dydxprotocol.stats.QueryUserStatsResponse

{
  "stats": {
    "taker_notional": "string",
    "maker_notional": "string"
  }
}
 

QueryUserStatsResponse is a request type for the UserStats RPC method.

Properties

NameTypeRequiredRestrictionsDescription
statsobjectfalsenonenone
» taker_notionalstring(uint64)falsenonenone
» maker_notionalstring(uint64)falsenonenone

dydxprotocol.stats.StatsMetadata

{
  "trailing_epoch": 0
}
 

StatsMetadata stores metadata for the x/stats module

Properties

NameTypeRequiredRestrictionsDescription
trailing_epochinteger(int64)falsenoneThe oldest epoch that is included in the stats. The next epoch to beremoved from the window.

dydxprotocol.stats.UserStats

{
  "taker_notional": "string",
  "maker_notional": "string"
}
 

UserStats stores stats for a User

Properties

NameTypeRequiredRestrictionsDescription
taker_notionalstring(uint64)falsenonenone
maker_notionalstring(uint64)falsenonenone

dydxprotocol.subaccounts.AssetPosition

{
  "asset_id": 0,
  "quantums": "string",
  "index": "string"
}
 

AssetPositions define an account’s positions of an Asset. Therefore they hold any information needed to trade on Spot and Margin.

Properties

NameTypeRequiredRestrictionsDescription
asset_idinteger(int64)falsenoneThe Id of the Asset.
quantumsstring(byte)falsenoneThe absolute size of the position in base quantums.
indexstring(uint64)falsenoneThe Index (either LongIndex or ShortIndex) of the Asset the lasttime this position was settledTODO(DEC-582): pending margin trading being added.

dydxprotocol.subaccounts.PerpetualPosition

{
  "perpetual_id": 0,
  "quantums": "string",
  "funding_index": "string"
}
 

PerpetualPositions are an account’s positions of a Perpetual. Therefore they hold any information needed to trade perpetuals.

Properties

NameTypeRequiredRestrictionsDescription
perpetual_idinteger(int64)falsenoneThe Id of the Perpetual.
quantumsstring(byte)falsenoneThe size of the position in base quantums.
funding_indexstring(byte)falsenoneThe funding_index of the Perpetual the last time this position wassettled.

dydxprotocol.subaccounts.QueryCollateralPoolAddressResponse

{
  "collateral_pool_address": "string"
}
 

QueryCollateralPoolAddressResponse is a response type for fetching the account address of the collateral pool associated with the passed in perpetual id.

Properties

NameTypeRequiredRestrictionsDescription
collateral_pool_addressstringfalsenonenone

dydxprotocol.subaccounts.QueryGetWithdrawalAndTransfersBlockedInfoResponse

{
  "negative_tnc_subaccount_seen_at_block": 0,
  "chain_outage_seen_at_block": 0,
  "withdrawals_and_transfers_unblocked_at_block": 0
}
 

QueryGetWithdrawalAndTransfersBlockedInfoRequest is a response type for fetching information about whether withdrawals and transfers are blocked.

Properties

NameTypeRequiredRestrictionsDescription
negative_tnc_subaccount_seen_at_blockinteger(int64)falsenonenone
chain_outage_seen_at_blockinteger(int64)falsenonenone
withdrawals_and_transfers_unblocked_at_blockinteger(int64)falsenonenone

dydxprotocol.subaccounts.QuerySubaccountAllResponse

{
  "subaccount": [
    {
      "id": {
        "owner": "string",
        "number": 0
      },
      "asset_positions": [
        {
          "asset_id": 0,
          "quantums": "string",
          "index": "string"
        }
      ],
      "perpetual_positions": [
        {
          "perpetual_id": 0,
          "quantums": "string",
          "funding_index": "string"
        }
      ],
      "margin_enabled": true
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QuerySubaccountAllResponse is response type for the Query RPC method.

Properties

NameTypeRequiredRestrictionsDescription
subaccount[object]falsenonenone
» idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
» asset_positions[object]falsenoneAll AssetPositions associated with this subaccount.Always sorted ascending by asset_id.
»» asset_idinteger(int64)falsenoneThe Id of the Asset.
»» quantumsstring(byte)falsenoneThe absolute size of the position in base quantums.
»» indexstring(uint64)falsenoneThe Index (either LongIndex or ShortIndex) of the Asset the lasttime this position was settledTODO(DEC-582): pending margin trading being added.
» perpetual_positions[object]falsenoneAll PerpetualPositions associated with this subaccount.Always sorted ascending by `perpetual_id.
»» perpetual_idinteger(int64)falsenoneThe Id of the Perpetual.
»» quantumsstring(byte)falsenoneThe size of the position in base quantums.
»» funding_indexstring(byte)falsenoneThe funding_index of the Perpetual the last time this position wassettled.
» margin_enabledbooleanfalsenoneSet by the owner. If true, then margin trades can be made in thissubaccount.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

dydxprotocol.subaccounts.QuerySubaccountResponse

{
  "subaccount": {
    "id": {
      "owner": "string",
      "number": 0
    },
    "asset_positions": [
      {
        "asset_id": 0,
        "quantums": "string",
        "index": "string"
      }
    ],
    "perpetual_positions": [
      {
        "perpetual_id": 0,
        "quantums": "string",
        "funding_index": "string"
      }
    ],
    "margin_enabled": true
  }
}
 

QuerySubaccountResponse is response type for the Query RPC method.

Properties

NameTypeRequiredRestrictionsDescription
subaccountobjectfalsenoneSubaccount defines a single sub-account for a given address.Subaccounts are uniquely indexed by a subaccountNumber/owner pair.
» idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
»» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
»» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
» asset_positions[object]falsenoneAll AssetPositions associated with this subaccount.Always sorted ascending by asset_id.
»» asset_idinteger(int64)falsenoneThe Id of the Asset.
»» quantumsstring(byte)falsenoneThe absolute size of the position in base quantums.
»» indexstring(uint64)falsenoneThe Index (either LongIndex or ShortIndex) of the Asset the lasttime this position was settledTODO(DEC-582): pending margin trading being added.
» perpetual_positions[object]falsenoneAll PerpetualPositions associated with this subaccount.Always sorted ascending by `perpetual_id.
»» perpetual_idinteger(int64)falsenoneThe Id of the Perpetual.
»» quantumsstring(byte)falsenoneThe size of the position in base quantums.
»» funding_indexstring(byte)falsenoneThe funding_index of the Perpetual the last time this position wassettled.
» margin_enabledbooleanfalsenoneSet by the owner. If true, then margin trades can be made in thissubaccount.

dydxprotocol.subaccounts.Subaccount

{
  "id": {
    "owner": "string",
    "number": 0
  },
  "asset_positions": [
    {
      "asset_id": 0,
      "quantums": "string",
      "index": "string"
    }
  ],
  "perpetual_positions": [
    {
      "perpetual_id": 0,
      "quantums": "string",
      "funding_index": "string"
    }
  ],
  "margin_enabled": true
}
 

Subaccount defines a single sub-account for a given address. Subaccounts are uniquely indexed by a subaccountNumber/owner pair.

Properties

NameTypeRequiredRestrictionsDescription
idobjectfalsenoneSubaccountId defines a unique identifier for a Subaccount.
» ownerstringfalsenoneThe address of the wallet that owns this subaccount.
» numberinteger(int64)falsenoneThe unique number of this subaccount for the owner.Currently limited to 128*1000 subaccounts per owner.
asset_positions[object]falsenoneAll AssetPositions associated with this subaccount.Always sorted ascending by asset_id.
» asset_idinteger(int64)falsenoneThe Id of the Asset.
» quantumsstring(byte)falsenoneThe absolute size of the position in base quantums.
» indexstring(uint64)falsenoneThe Index (either LongIndex or ShortIndex) of the Asset the lasttime this position was settledTODO(DEC-582): pending margin trading being added.
perpetual_positions[object]falsenoneAll PerpetualPositions associated with this subaccount.Always sorted ascending by `perpetual_id.
» perpetual_idinteger(int64)falsenoneThe Id of the Perpetual.
» quantumsstring(byte)falsenoneThe size of the position in base quantums.
» funding_indexstring(byte)falsenoneThe funding_index of the Perpetual the last time this position wassettled.
margin_enabledbooleanfalsenoneSet by the owner. If true, then margin trades can be made in thissubaccount.

dydxprotocol.vest.QueryVestEntryResponse

{
  "entry": {
    "vester_account": "string",
    "treasury_account": "string",
    "denom": "string",
    "start_time": "2019-08-24T14:15:22Z",
    "end_time": "2019-08-24T14:15:22Z"
  }
}
 

QueryVestEntryResponse is a response type for the VestEntry RPC method.

Properties

NameTypeRequiredRestrictionsDescription
entryobjectfalsenoneVestEntry specifies a Vester Account and the rate at which tokens aredripped into the corresponding Treasury Account.
» vester_accountstringfalsenoneThe module account to vest tokens from.This is also the key to this VestEntry in state.
» treasury_accountstringfalsenoneThe module account to vest tokens to.
» denomstringfalsenoneThe denom of the token to vest.
» start_timestring(date-time)falsenoneThe start time of vest. Before this time, no vest will occur.
» end_timestring(date-time)falsenoneThe end time of vest. At this target date, all funds should be in theTreasury Account and none left in the Vester Account.

dydxprotocol.vest.VestEntry

{
  "vester_account": "string",
  "treasury_account": "string",
  "denom": "string",
  "start_time": "2019-08-24T14:15:22Z",
  "end_time": "2019-08-24T14:15:22Z"
}
 

VestEntry specifies a Vester Account and the rate at which tokens are dripped into the corresponding Treasury Account.

Properties

NameTypeRequiredRestrictionsDescription
vester_accountstringfalsenoneThe module account to vest tokens from.This is also the key to this VestEntry in state.
treasury_accountstringfalsenoneThe module account to vest tokens to.
denomstringfalsenoneThe denom of the token to vest.
start_timestring(date-time)falsenoneThe start time of vest. Before this time, no vest will occur.
end_timestring(date-time)falsenoneThe end time of vest. At this target date, all funds should be in theTreasury Account and none left in the Vester Account.

ibc.applications.transfer.v1.DenomTrace

{
  "path": "string",
  "base_denom": "string"
}
 

DenomTrace contains the base denomination for ICS20 fungible tokens and the source tracing information path.

Properties

NameTypeRequiredRestrictionsDescription
pathstringfalsenonepath defines the chain of port/channel identifiers used for tracing thesource of the fungible token.
base_denomstringfalsenonebase denomination of the relayed fungible token.

ibc.applications.transfer.v1.Params

{
  "send_enabled": true,
  "receive_enabled": true
}
 

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.

Properties

NameTypeRequiredRestrictionsDescription
send_enabledbooleanfalsenonesend_enabled enables or disables all cross-chain token transfers from thischain.
receive_enabledbooleanfalsenonereceive_enabled enables or disables all cross-chain token transfers to thischain.

ibc.applications.transfer.v1.QueryDenomHashResponse

{
  "hash": "string"
}
 

QueryDenomHashResponse is the response type for the Query/DenomHash RPC method.

Properties

NameTypeRequiredRestrictionsDescription
hashstringfalsenonehash (in hex format) of the denomination trace information.

ibc.applications.transfer.v1.QueryDenomTraceResponse

{
  "denom_trace": {
    "path": "string",
    "base_denom": "string"
  }
}
 

QueryDenomTraceResponse is the response type for the Query/DenomTrace RPC method.

Properties

NameTypeRequiredRestrictionsDescription
denom_traceobjectfalsenoneDenomTrace contains the base denomination for ICS20 fungible tokens and thesource tracing information path.
» pathstringfalsenonepath defines the chain of port/channel identifiers used for tracing thesource of the fungible token.
» base_denomstringfalsenonebase denomination of the relayed fungible token.

ibc.applications.transfer.v1.QueryDenomTracesResponse

{
  "denom_traces": [
    {
      "path": "string",
      "base_denom": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryConnectionsResponse is the response type for the Query/DenomTraces RPC method.

Properties

NameTypeRequiredRestrictionsDescription
denom_traces[object]falsenonedenom_traces returns all denominations trace information.
» pathstringfalsenonepath defines the chain of port/channel identifiers used for tracing thesource of the fungible token.
» base_denomstringfalsenonebase denomination of the relayed fungible token.
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

ibc.applications.transfer.v1.QueryEscrowAddressResponse

{
  "escrow_address": "string"
}
 

QueryEscrowAddressResponse is the response type of the EscrowAddress RPC method.

Properties

NameTypeRequiredRestrictionsDescription
escrow_addressstringfalsenonenone

ibc.applications.transfer.v1.QueryParamsResponse

{
  "params": {
    "send_enabled": true,
    "receive_enabled": true
  }
}
 

QueryParamsResponse is the response type for the Query/Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams defines the parameters of the module.
» send_enabledbooleanfalsenonesend_enabled enables or disables all cross-chain token transfers from thischain.
» receive_enabledbooleanfalsenonereceive_enabled enables or disables all cross-chain token transfers to thischain.

ibc.applications.transfer.v1.QueryTotalEscrowForDenomResponse

{
  "amount": {
    "denom": "string",
    "amount": "string"
  }
}
 

QueryTotalEscrowForDenomResponse is the response type for TotalEscrowForDenom RPC method.

Properties

NameTypeRequiredRestrictionsDescription
amountobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
» denomstringfalsenonenone
» amountstringfalsenonenone

ibc.core.client.v1.ConsensusStateWithHeight

{
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  },
  "consensus_state": {
    "type_url": "string",
    "value": "string"
  }
}
 

ConsensusStateWithHeight defines a consensus state with an additional height field.

Properties

NameTypeRequiredRestrictionsDescription
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone
consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ibc.core.client.v1.Height

{
  "revision_number": "string",
  "revision_height": "string"
}
 

Height is a monotonically increasing data type that can be compared against another Height for the purposes of updating and freezing clients

Properties

NameTypeRequiredRestrictionsDescription
revision_numberstring(uint64)falsenonenone
revision_heightstring(uint64)falsenonenone

ibc.core.client.v1.IdentifiedClientState

{
  "client_id": "string",
  "client_state": {
    "type_url": "string",
    "value": "string"
  }
}
 

IdentifiedClientState defines a client state with an additional client identifier field.

Properties

NameTypeRequiredRestrictionsDescription
client_idstringfalsenonenone
client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ibc.core.client.v1.Params

{
  "allowed_clients": [
    "string"
  ]
}
 

Params defines the set of IBC light client parameters.

Properties

NameTypeRequiredRestrictionsDescription
allowed_clients[string]falsenoneallowed_clients defines the list of allowed client state types which can be createdand interacted with. If a client type is removed from the allowed clients list, usageof this client will be disabled until it is added again to the list.

ibc.core.client.v1.QueryClientParamsResponse

{
  "params": {
    "allowed_clients": [
      "string"
    ]
  }
}
 

QueryClientParamsResponse is the response type for the Query/ClientParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams defines the parameters of the module.
» allowed_clients[string]falsenoneallowed_clients defines the list of allowed client state types which can be createdand interacted with. If a client type is removed from the allowed clients list, usageof this client will be disabled until it is added again to the list.

ibc.core.client.v1.QueryClientStateResponse

{
  "client_state": {
    "type_url": "string",
    "value": "string"
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryClientStateResponse is the response type for the Query/ClientState RPC method. Besides the client state, it includes a proof and the height from which the proof was retrieved.

Properties

NameTypeRequiredRestrictionsDescription
client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.client.v1.QueryClientStatesResponse

{
  "client_states": [
    {
      "client_id": "string",
      "client_state": {
        "type_url": "string",
        "value": "string"
      }
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryClientStatesResponse is the response type for the Query/ClientStates RPC method.

Properties

NameTypeRequiredRestrictionsDescription
client_states[object]falsenonelist of stored ClientStates of the chain.
» client_idstringfalsenonenone
» client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

ibc.core.client.v1.QueryClientStatusResponse

{
  "status": "string"
}
 

QueryClientStatusResponse is the response type for the Query/ClientStatus RPC method. It returns the current status of the IBC client.

Properties

NameTypeRequiredRestrictionsDescription
statusstringfalsenonenone

ibc.core.client.v1.QueryConsensusStateHeightsResponse

{
  "consensus_state_heights": [
    {
      "revision_number": "string",
      "revision_height": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryConsensusStateHeightsResponse is the response type for the Query/ConsensusStateHeights RPC method

Properties

NameTypeRequiredRestrictionsDescription
consensus_state_heights[object]falsenonenone
» Height is a monotonically increasing data type
that can be compared against another Height for the purposes of updating and
freezing clientsobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

ibc.core.client.v1.QueryConsensusStateResponse

{
  "consensus_state": {
    "type_url": "string",
    "value": "string"
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryConsensusStateResponse is the response type for the Query/ConsensusState RPC method

Properties

NameTypeRequiredRestrictionsDescription
consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.client.v1.QueryConsensusStatesResponse

{
  "consensus_states": [
    {
      "height": {
        "revision_number": "string",
        "revision_height": "string"
      },
      "consensus_state": {
        "type_url": "string",
        "value": "string"
      }
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryConsensusStatesResponse is the response type for the Query/ConsensusStates RPC method

Properties

NameTypeRequiredRestrictionsDescription
consensus_states[object]falsenonenone
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone
» consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

ibc.core.client.v1.QueryUpgradedClientStateResponse

{
  "upgraded_client_state": {
    "type_url": "string",
    "value": "string"
  }
}
 

QueryUpgradedClientStateResponse is the response type for the Query/UpgradedClientState RPC method.

Properties

NameTypeRequiredRestrictionsDescription
upgraded_client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ibc.core.client.v1.QueryUpgradedConsensusStateResponse

{
  "upgraded_consensus_state": {
    "type_url": "string",
    "value": "string"
  }
}
 

QueryUpgradedConsensusStateResponse is the response type for the Query/UpgradedConsensusState RPC method.

Properties

NameTypeRequiredRestrictionsDescription
upgraded_consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

ibc.core.client.v1.QueryVerifyMembershipRequest

{
  "client_id": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  },
  "merkle_path": {
    "key_path": [
      "string"
    ]
  },
  "value": "string",
  "time_delay": "string",
  "block_delay": "string"
}
 

QueryVerifyMembershipRequest is the request type for the Query/VerifyMembership RPC method

Properties

NameTypeRequiredRestrictionsDescription
client_idstringfalsenoneclient unique identifier.
proofstring(byte)falsenonethe proof to be verified by the client.
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone
merkle_pathobjectfalsenonethe commitment key path.
» key_path[string]falsenonenone
valuestring(byte)falsenonethe value which is proven.
time_delaystring(uint64)falsenonenone
block_delaystring(uint64)falsenonenone

ibc.core.client.v1.QueryVerifyMembershipResponse

{
  "success": true
}
 

QueryVerifyMembershipResponse is the response type for the Query/VerifyMembership RPC method

Properties

NameTypeRequiredRestrictionsDescription
successbooleanfalsenoneboolean indicating success or failure of proof verification.

ibc.core.commitment.v1.MerklePath

{
  "key_path": [
    "string"
  ]
}
 

MerklePath is the path used to verify commitment proofs, which can be an arbitrary structured object (defined by a commitment type). MerklePath is represented from root-to-leaf

Properties

NameTypeRequiredRestrictionsDescription
key_path[string]falsenonenone

ibc.core.commitment.v1.MerklePrefix

{
  "key_prefix": "string"
}
 

MerklePrefix is merkle path prefixed to the key. The constructed key from the Path and the key will be append(Path.KeyPath, append(Path.KeyPrefix, key...))

Properties

NameTypeRequiredRestrictionsDescription
key_prefixstring(byte)falsenonenone

ibc.core.connection.v1.ConnectionEnd

{
  "client_id": "string",
  "versions": [
    {
      "identifier": "string",
      "features": [
        "string"
      ]
    }
  ],
  "state": "STATE_UNINITIALIZED_UNSPECIFIED",
  "counterparty": {
    "client_id": "string",
    "connection_id": "string",
    "prefix": {
      "key_prefix": "string"
    }
  },
  "delay_period": "string"
}
 

ConnectionEnd defines a stateful object on a chain connected to another separate one. NOTE: there must only be 2 defined ConnectionEnds to establish a connection between two chains.

Properties

NameTypeRequiredRestrictionsDescription
client_idstringfalsenoneclient associated with this connection.
versions[object]falsenoneIBC version which can be utilised to determine encodings or protocols forchannels or packets utilising this connection.
» identifierstringfalsenonenone
» features[string]falsenonenone
statestringfalsenonecurrent state of the connection end.
counterpartyobjectfalsenonecounterparty chain associated with this connection.
» client_idstringfalsenoneidentifies the client on the counterparty chain associated with a givenconnection.
» connection_idstringfalsenoneidentifies the connection end on the counterparty chain associated with agiven connection.
» prefixobjectfalsenonecommitment merkle prefix of the counterparty chain.
»» key_prefixstring(byte)falsenonenone
delay_periodstring(uint64)falsenonedelay period that must pass before a consensus state can be used forpacket-verification NOTE: delay period logic is only implemented by someclients.

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN

ibc.core.connection.v1.Counterparty

{
  "client_id": "string",
  "connection_id": "string",
  "prefix": {
    "key_prefix": "string"
  }
}
 

Counterparty defines the counterparty chain associated with a connection end.

Properties

NameTypeRequiredRestrictionsDescription
client_idstringfalsenoneidentifies the client on the counterparty chain associated with a givenconnection.
connection_idstringfalsenoneidentifies the connection end on the counterparty chain associated with agiven connection.
prefixobjectfalsenonecommitment merkle prefix of the counterparty chain.
» key_prefixstring(byte)falsenonenone

ibc.core.connection.v1.IdentifiedConnection

{
  "id": "string",
  "client_id": "string",
  "versions": [
    {
      "identifier": "string",
      "features": [
        "string"
      ]
    }
  ],
  "state": "STATE_UNINITIALIZED_UNSPECIFIED",
  "counterparty": {
    "client_id": "string",
    "connection_id": "string",
    "prefix": {
      "key_prefix": "string"
    }
  },
  "delay_period": "string"
}
 

IdentifiedConnection defines a connection with additional connection identifier field.

Properties

NameTypeRequiredRestrictionsDescription
idstringfalsenoneconnection identifier.
client_idstringfalsenoneclient associated with this connection.
versions[object]falsenonenone
» identifierstringfalsenonenone
» features[string]falsenonenone
statestringfalsenonecurrent state of the connection end.
counterpartyobjectfalsenonecounterparty chain associated with this connection.
» client_idstringfalsenoneidentifies the client on the counterparty chain associated with a givenconnection.
» connection_idstringfalsenoneidentifies the connection end on the counterparty chain associated with agiven connection.
» prefixobjectfalsenonecommitment merkle prefix of the counterparty chain.
»» key_prefixstring(byte)falsenonenone
delay_periodstring(uint64)falsenonedelay period associated with this connection.

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN

ibc.core.connection.v1.Params

{
  "max_expected_time_per_block": "string"
}
 

Params defines the set of Connection parameters.

Properties

NameTypeRequiredRestrictionsDescription
max_expected_time_per_blockstring(uint64)falsenonemaximum expected time per block (in nanoseconds), used to enforce block delay. This parameter should reflect thelargest amount of time that the chain might reasonably take to produce the next block under normal operatingconditions. A safe choice is 3-5x the expected time per block.

ibc.core.connection.v1.QueryClientConnectionsResponse

{
  "connection_paths": [
    "string"
  ],
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryClientConnectionsResponse is the response type for the Query/ClientConnections RPC method

Properties

NameTypeRequiredRestrictionsDescription
connection_paths[string]falsenoneslice of all the connection paths associated with a client.
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.connection.v1.QueryConnectionClientStateResponse

{
  "identified_client_state": {
    "client_id": "string",
    "client_state": {
      "type_url": "string",
      "value": "string"
    }
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryConnectionClientStateResponse is the response type for the Query/ConnectionClientState RPC method

Properties

NameTypeRequiredRestrictionsDescription
identified_client_stateobjectfalsenoneIdentifiedClientState defines a client state with an additional clientidentifier field.
» client_idstringfalsenonenone
» client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.connection.v1.QueryConnectionConsensusStateResponse

{
  "consensus_state": {
    "type_url": "string",
    "value": "string"
  },
  "client_id": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryConnectionConsensusStateResponse is the response type for the Query/ConnectionConsensusState RPC method

Properties

NameTypeRequiredRestrictionsDescription
consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
client_idstringfalsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.connection.v1.QueryConnectionParamsResponse

{
  "params": {
    "max_expected_time_per_block": "string"
  }
}
 

QueryConnectionParamsResponse is the response type for the Query/ConnectionParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams defines the parameters of the module.
» max_expected_time_per_blockstring(uint64)falsenonemaximum expected time per block (in nanoseconds), used to enforce block delay. This parameter should reflect thelargest amount of time that the chain might reasonably take to produce the next block under normal operatingconditions. A safe choice is 3-5x the expected time per block.

ibc.core.connection.v1.QueryConnectionResponse

{
  "connection": {
    "client_id": "string",
    "versions": [
      {
        "identifier": "string",
        "features": [
          "string"
        ]
      }
    ],
    "state": "STATE_UNINITIALIZED_UNSPECIFIED",
    "counterparty": {
      "client_id": "string",
      "connection_id": "string",
      "prefix": {
        "key_prefix": "string"
      }
    },
    "delay_period": "string"
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryConnectionResponse is the response type for the Query/Connection RPC method. Besides the connection end, it includes a proof and the height from which the proof was retrieved.

Properties

NameTypeRequiredRestrictionsDescription
connectionobjectfalsenoneConnectionEnd defines a stateful object on a chain connected to anotherseparate one.NOTE: there must only be 2 defined ConnectionEnds to establisha connection between two chains.
» client_idstringfalsenoneclient associated with this connection.
» versions[object]falsenoneIBC version which can be utilised to determine encodings or protocols forchannels or packets utilising this connection.
»» identifierstringfalsenonenone
»» features[string]falsenonenone
» statestringfalsenonecurrent state of the connection end.
» counterpartyobjectfalsenonecounterparty chain associated with this connection.
»» client_idstringfalsenoneidentifies the client on the counterparty chain associated with a givenconnection.
»» connection_idstringfalsenoneidentifies the connection end on the counterparty chain associated with agiven connection.
»» prefixobjectfalsenonecommitment merkle prefix of the counterparty chain.
»»» key_prefixstring(byte)falsenonenone
» delay_periodstring(uint64)falsenonedelay period that must pass before a consensus state can be used forpacket-verification NOTE: delay period logic is only implemented by someclients.
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN

ibc.core.connection.v1.QueryConnectionsResponse

{
  "connections": [
    {
      "id": "string",
      "client_id": "string",
      "versions": [
        {
          "identifier": "string",
          "features": [
            "string"
          ]
        }
      ],
      "state": "STATE_UNINITIALIZED_UNSPECIFIED",
      "counterparty": {
        "client_id": "string",
        "connection_id": "string",
        "prefix": {
          "key_prefix": "string"
        }
      },
      "delay_period": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  },
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryConnectionsResponse is the response type for the Query/Connections RPC method.

Properties

NameTypeRequiredRestrictionsDescription
connections[object]falsenonelist of stored connections of the chain.
» idstringfalsenoneconnection identifier.
» client_idstringfalsenoneclient associated with this connection.
» versions[object]falsenonenone
»» identifierstringfalsenonenone
»» features[string]falsenonenone
» statestringfalsenonecurrent state of the connection end.
» counterpartyobjectfalsenonecounterparty chain associated with this connection.
»» client_idstringfalsenoneidentifies the client on the counterparty chain associated with a givenconnection.
»» connection_idstringfalsenoneidentifies the connection end on the counterparty chain associated with agiven connection.
»» prefixobjectfalsenonecommitment merkle prefix of the counterparty chain.
»»» key_prefixstring(byte)falsenonenone
» delay_periodstring(uint64)falsenonedelay period associated with this connection.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN

ibc.core.connection.v1.State

"STATE_UNINITIALIZED_UNSPECIFIED"
 

State defines if a connection is in one of the following states: INIT, TRYOPEN, OPEN or UNINITIALIZED.

  • STATE_UNINITIALIZED_UNSPECIFIED: Default State
  • STATE_INIT: A connection end has just started the opening handshake.
  • STATE_TRYOPEN: A connection end has acknowledged the handshake step on the counterparty chain.
  • STATE_OPEN: A connection end has completed the handshake.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneState defines if a connection is in one of the following states:INIT, TRYOPEN, OPEN or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A connection end has just started the opening handshake. - STATE_TRYOPEN: A connection end has acknowledged the handshake step on the counterpartychain. - STATE_OPEN: A connection end has completed the handshake.

Enumerated Values

PropertyValue
anonymousSTATE_UNINITIALIZED_UNSPECIFIED
anonymousSTATE_INIT
anonymousSTATE_TRYOPEN
anonymousSTATE_OPEN

ibc.core.connection.v1.Version

{
  "identifier": "string",
  "features": [
    "string"
  ]
}
 

Version defines the versioning scheme used to negotiate the IBC version in the connection handshake.

Properties

NameTypeRequiredRestrictionsDescription
identifierstringfalsenonenone
features[string]falsenonenone

ibc.core.channel.v1.Channel

{
  "state": "STATE_UNINITIALIZED_UNSPECIFIED",
  "ordering": "ORDER_NONE_UNSPECIFIED",
  "counterparty": {
    "port_id": "string",
    "channel_id": "string"
  },
  "connection_hops": [
    "string"
  ],
  "version": "string",
  "upgrade_sequence": "string"
}
 

Channel defines pipeline for exactly-once packet delivery between specific modules on separate blockchains, which has at least one end capable of sending packets and one end capable of receiving packets.

Properties

NameTypeRequiredRestrictionsDescription
statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
counterpartyobjectfalsenonenone
» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
» channel_idstringfalsenonenone
connection_hops[string]falsenonenone
versionstringfalsenonenone
upgrade_sequencestring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

ibc.core.channel.v1.Counterparty

{
  "port_id": "string",
  "channel_id": "string"
}
 

Counterparty defines a channel end counterparty

Properties

NameTypeRequiredRestrictionsDescription
port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
channel_idstringfalsenonenone

ibc.core.channel.v1.ErrorReceipt

{
  "sequence": "string",
  "message": "string"
}
 

ErrorReceipt defines a type which encapsulates the upgrade sequence and error associated with the upgrade handshake failure. When a channel upgrade handshake is aborted both chains are expected to increment to the next sequence.

Properties

NameTypeRequiredRestrictionsDescription
sequencestring(uint64)falsenonenone
messagestringfalsenonenone

ibc.core.channel.v1.IdentifiedChannel

{
  "state": "STATE_UNINITIALIZED_UNSPECIFIED",
  "ordering": "ORDER_NONE_UNSPECIFIED",
  "counterparty": {
    "port_id": "string",
    "channel_id": "string"
  },
  "connection_hops": [
    "string"
  ],
  "version": "string",
  "port_id": "string",
  "channel_id": "string",
  "upgrade_sequence": "string"
}
 

IdentifiedChannel defines a channel with additional port and channel identifier fields.

Properties

NameTypeRequiredRestrictionsDescription
statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
counterpartyobjectfalsenonenone
» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
» channel_idstringfalsenonenone
connection_hops[string]falsenonenone
versionstringfalsenonenone
port_idstringfalsenonenone
channel_idstringfalsenonenone
upgrade_sequencestring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

ibc.core.channel.v1.Order

"ORDER_NONE_UNSPECIFIED"
 

Order defines if a channel is ORDERED or UNORDERED

Properties

NameTypeRequiredRestrictionsDescription
Order defines if a channel is ORDERED or UNORDEREDstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent

Enumerated Values

PropertyValue
Order defines if a channel is ORDERED or UNORDEREDORDER_NONE_UNSPECIFIED
Order defines if a channel is ORDERED or UNORDEREDORDER_UNORDERED
Order defines if a channel is ORDERED or UNORDEREDORDER_ORDERED

ibc.core.channel.v1.PacketState

{
  "port_id": "string",
  "channel_id": "string",
  "sequence": "string",
  "data": "string"
}
 

PacketState defines the generic type necessary to retrieve and store packet commitments, acknowledgements, and receipts. Caller is responsible for knowing the context necessary to interpret this state as a commitment, acknowledgement, or a receipt.

Properties

NameTypeRequiredRestrictionsDescription
port_idstringfalsenonechannel port identifier.
channel_idstringfalsenonechannel unique identifier.
sequencestring(uint64)falsenonepacket sequence.
datastring(byte)falsenoneembedded data that represents packet state.

ibc.core.channel.v1.Params

{
  "upgrade_timeout": {
    "height": {
      "revision_number": "string",
      "revision_height": "string"
    },
    "timestamp": "string"
  }
}
 

Params defines the set of IBC channel parameters.

Properties

NameTypeRequiredRestrictionsDescription
upgrade_timeoutobjectfalsenoneTimeout defines an execution deadline structure for 04-channel handlers.This includes packet lifecycle handlers as well as the upgrade handshake handlers.A valid Timeout contains either one or both of a timestamp and block height (sequence).
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone
» timestampstring(uint64)falsenonenone

ibc.core.channel.v1.QueryChannelClientStateResponse

{
  "identified_client_state": {
    "client_id": "string",
    "client_state": {
      "type_url": "string",
      "value": "string"
    }
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryChannelClientStateResponse is the Response type for the Query/QueryChannelClientState RPC method

Properties

NameTypeRequiredRestrictionsDescription
identified_client_stateobjectfalsenoneIdentifiedClientState defines a client state with an additional clientidentifier field.
» client_idstringfalsenonenone
» client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryChannelConsensusStateResponse

{
  "consensus_state": {
    "type_url": "string",
    "value": "string"
  },
  "client_id": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryChannelClientStateResponse is the Response type for the Query/QueryChannelClientState RPC method

Properties

NameTypeRequiredRestrictionsDescription
consensus_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
client_idstringfalsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryChannelParamsResponse

{
  "params": {
    "upgrade_timeout": {
      "height": {
        "revision_number": "string",
        "revision_height": "string"
      },
      "timestamp": "string"
    }
  }
}
 

QueryChannelParamsResponse is the response type for the Query/ChannelParams RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams defines the parameters of the module.
» upgrade_timeoutobjectfalsenoneTimeout defines an execution deadline structure for 04-channel handlers.This includes packet lifecycle handlers as well as the upgrade handshake handlers.A valid Timeout contains either one or both of a timestamp and block height (sequence).
»» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»»» revision_numberstring(uint64)falsenonenone
»»» revision_heightstring(uint64)falsenonenone
»» timestampstring(uint64)falsenonenone

ibc.core.channel.v1.QueryChannelResponse

{
  "channel": {
    "state": "STATE_UNINITIALIZED_UNSPECIFIED",
    "ordering": "ORDER_NONE_UNSPECIFIED",
    "counterparty": {
      "port_id": "string",
      "channel_id": "string"
    },
    "connection_hops": [
      "string"
    ],
    "version": "string",
    "upgrade_sequence": "string"
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryChannelResponse is the response type for the Query/Channel RPC method. Besides the Channel end, it includes a proof and the height from which the proof was retrieved.

Properties

NameTypeRequiredRestrictionsDescription
channelobjectfalsenoneChannel defines pipeline for exactly-once packet delivery between specificmodules on separate blockchains, which has at least one end capable ofsending packets and one end capable of receiving packets.
» statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
» counterpartyobjectfalsenonenone
»» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
»» channel_idstringfalsenonenone
» connection_hops[string]falsenonenone
» versionstringfalsenonenone
» upgrade_sequencestring(uint64)falsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

ibc.core.channel.v1.QueryChannelsResponse

{
  "channels": [
    {
      "state": "STATE_UNINITIALIZED_UNSPECIFIED",
      "ordering": "ORDER_NONE_UNSPECIFIED",
      "counterparty": {
        "port_id": "string",
        "channel_id": "string"
      },
      "connection_hops": [
        "string"
      ],
      "version": "string",
      "port_id": "string",
      "channel_id": "string",
      "upgrade_sequence": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  },
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryChannelsResponse is the response type for the Query/Channels RPC method.

Properties

NameTypeRequiredRestrictionsDescription
channels[object]falsenonelist of stored channels of the chain.
» statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
» counterpartyobjectfalsenonenone
»» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
»» channel_idstringfalsenonenone
» connection_hops[string]falsenonenone
» versionstringfalsenonenone
» port_idstringfalsenonenone
» channel_idstringfalsenonenone
» upgrade_sequencestring(uint64)falsenonenone
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

ibc.core.channel.v1.QueryConnectionChannelsResponse

{
  "channels": [
    {
      "state": "STATE_UNINITIALIZED_UNSPECIFIED",
      "ordering": "ORDER_NONE_UNSPECIFIED",
      "counterparty": {
        "port_id": "string",
        "channel_id": "string"
      },
      "connection_hops": [
        "string"
      ],
      "version": "string",
      "port_id": "string",
      "channel_id": "string",
      "upgrade_sequence": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  },
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryConnectionChannelsResponse is the Response type for the Query/QueryConnectionChannels RPC method

Properties

NameTypeRequiredRestrictionsDescription
channels[object]falsenonelist of channels associated with a connection.
» statestringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
» counterpartyobjectfalsenonenone
»» port_idstringfalsenoneport on the counterparty chain which owns the other end of the channel.
»» channel_idstringfalsenonenone
» connection_hops[string]falsenonenone
» versionstringfalsenonenone
» port_idstringfalsenonenone
» channel_idstringfalsenonenone
» upgrade_sequencestring(uint64)falsenonenone
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
stateSTATE_UNINITIALIZED_UNSPECIFIED
stateSTATE_INIT
stateSTATE_TRYOPEN
stateSTATE_OPEN
stateSTATE_CLOSED
stateSTATE_FLUSHING
stateSTATE_FLUSHCOMPLETE
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

ibc.core.channel.v1.QueryNextSequenceReceiveResponse

{
  "next_sequence_receive": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QuerySequenceResponse is the response type for the Query/QueryNextSequenceReceiveResponse RPC method

Properties

NameTypeRequiredRestrictionsDescription
next_sequence_receivestring(uint64)falsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryNextSequenceSendResponse

{
  "next_sequence_send": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryNextSequenceSendResponse is the request type for the Query/QueryNextSequenceSend RPC method

Properties

NameTypeRequiredRestrictionsDescription
next_sequence_sendstring(uint64)falsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryPacketAcknowledgementResponse

{
  "acknowledgement": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryPacketAcknowledgementResponse defines the client query response for a packet which also includes a proof and the height from which the proof was retrieved

Properties

NameTypeRequiredRestrictionsDescription
acknowledgementstring(byte)falsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryPacketAcknowledgementsResponse

{
  "acknowledgements": [
    {
      "port_id": "string",
      "channel_id": "string",
      "sequence": "string",
      "data": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  },
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryPacketAcknowledgemetsResponse is the request type for the Query/QueryPacketAcknowledgements RPC method

Properties

NameTypeRequiredRestrictionsDescription
acknowledgements[object]falsenonenone
» port_idstringfalsenonechannel port identifier.
» channel_idstringfalsenonechannel unique identifier.
» sequencestring(uint64)falsenonepacket sequence.
» datastring(byte)falsenoneembedded data that represents packet state.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryPacketCommitmentResponse

{
  "commitment": "string",
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryPacketCommitmentResponse defines the client query response for a packet which also includes a proof and the height from which the proof was retrieved

Properties

NameTypeRequiredRestrictionsDescription
commitmentstring(byte)falsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryPacketCommitmentsResponse

{
  "commitments": [
    {
      "port_id": "string",
      "channel_id": "string",
      "sequence": "string",
      "data": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  },
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryPacketCommitmentsResponse is the request type for the Query/QueryPacketCommitments RPC method

Properties

NameTypeRequiredRestrictionsDescription
commitments[object]falsenonenone
» port_idstringfalsenonechannel port identifier.
» channel_idstringfalsenonechannel unique identifier.
» sequencestring(uint64)falsenonepacket sequence.
» datastring(byte)falsenoneembedded data that represents packet state.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryPacketReceiptResponse

{
  "received": true,
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryPacketReceiptResponse defines the client query response for a packet receipt which also includes a proof, and the height from which the proof was retrieved

Properties

NameTypeRequiredRestrictionsDescription
receivedbooleanfalsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryUnreceivedAcksResponse

{
  "sequences": [
    "string"
  ],
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryUnreceivedAcksResponse is the response type for the Query/UnreceivedAcks RPC method

Properties

NameTypeRequiredRestrictionsDescription
sequences[string]falsenonenone
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryUnreceivedPacketsResponse

{
  "sequences": [
    "string"
  ],
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryUnreceivedPacketsResponse is the response type for the Query/UnreceivedPacketCommitments RPC method

Properties

NameTypeRequiredRestrictionsDescription
sequences[string]falsenonenone
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryUpgradeErrorResponse

{
  "error_receipt": {
    "sequence": "string",
    "message": "string"
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryUpgradeErrorResponse is the response type for the Query/QueryUpgradeError RPC method

Properties

NameTypeRequiredRestrictionsDescription
error_receiptobjectfalsenoneErrorReceipt defines a type which encapsulates the upgrade sequence and error associated with theupgrade handshake failure. When a channel upgrade handshake is aborted both chains are expected to increment to thenext sequence.
» sequencestring(uint64)falsenonenone
» messagestringfalsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

ibc.core.channel.v1.QueryUpgradeResponse

{
  "upgrade": {
    "fields": {
      "ordering": "ORDER_NONE_UNSPECIFIED",
      "connection_hops": [
        "string"
      ],
      "version": "string"
    },
    "timeout": {
      "height": {
        "revision_number": "string",
        "revision_height": "string"
      },
      "timestamp": "string"
    },
    "next_sequence_send": "string"
  },
  "proof": "string",
  "proof_height": {
    "revision_number": "string",
    "revision_height": "string"
  }
}
 

QueryUpgradeResponse is the response type for the QueryUpgradeResponse RPC method

Properties

NameTypeRequiredRestrictionsDescription
upgradeobjectfalsenoneUpgrade is a verifiable type which contains the relevant informationfor an attempted upgrade. It provides the proposed changes to the channelend, the timeout for this upgrade attempt and the next packet sequencewhich allows the counterparty to efficiently know the highest sequence it has received.The next sequence send is used for pruning and upgrading from unordered to ordered channels.
» fieldsobjectfalsenoneUpgradeFields are the fields in a channel end which may be changedduring a channel upgrade.
»» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
»» connection_hops[string]falsenonenone
»» versionstringfalsenonenone
» timeoutobjectfalsenoneTimeout defines an execution deadline structure for 04-channel handlers.This includes packet lifecycle handlers as well as the upgrade handshake handlers.A valid Timeout contains either one or both of a timestamp and block height (sequence).
»» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»»» revision_numberstring(uint64)falsenonenone
»»» revision_heightstring(uint64)falsenonenone
»» timestampstring(uint64)falsenonenone
» next_sequence_sendstring(uint64)falsenonenone
proofstring(byte)falsenonenone
proof_heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone

Enumerated Values

PropertyValue
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

ibc.core.channel.v1.State

"STATE_UNINITIALIZED_UNSPECIFIED"
 

State defines if a channel is in one of the following states: CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED.

  • STATE_UNINITIALIZED_UNSPECIFIED: Default State
  • STATE_INIT: A channel has just started the opening handshake.
  • STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.
  • STATE_OPEN: A channel has completed the handshake. Open channels are ready to send and receive packets.
  • STATE_CLOSED: A channel has been closed and can no longer be used to send or receive packets.
  • STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets.
  • STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneState defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels areready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receivepackets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.

Enumerated Values

PropertyValue
anonymousSTATE_UNINITIALIZED_UNSPECIFIED
anonymousSTATE_INIT
anonymousSTATE_TRYOPEN
anonymousSTATE_OPEN
anonymousSTATE_CLOSED
anonymousSTATE_FLUSHING
anonymousSTATE_FLUSHCOMPLETE

ibc.core.channel.v1.Timeout

{
  "height": {
    "revision_number": "string",
    "revision_height": "string"
  },
  "timestamp": "string"
}
 

Timeout defines an execution deadline structure for 04-channel handlers. This includes packet lifecycle handlers as well as the upgrade handshake handlers. A valid Timeout contains either one or both of a timestamp and block height (sequence).

Properties

NameTypeRequiredRestrictionsDescription
heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
» revision_numberstring(uint64)falsenonenone
» revision_heightstring(uint64)falsenonenone
timestampstring(uint64)falsenonenone

ibc.core.channel.v1.Upgrade

{
  "fields": {
    "ordering": "ORDER_NONE_UNSPECIFIED",
    "connection_hops": [
      "string"
    ],
    "version": "string"
  },
  "timeout": {
    "height": {
      "revision_number": "string",
      "revision_height": "string"
    },
    "timestamp": "string"
  },
  "next_sequence_send": "string"
}
 

Upgrade is a verifiable type which contains the relevant information for an attempted upgrade. It provides the proposed changes to the channel end, the timeout for this upgrade attempt and the next packet sequence which allows the counterparty to efficiently know the highest sequence it has received. The next sequence send is used for pruning and upgrading from unordered to ordered channels.

Properties

NameTypeRequiredRestrictionsDescription
fieldsobjectfalsenoneUpgradeFields are the fields in a channel end which may be changedduring a channel upgrade.
» orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
» connection_hops[string]falsenonenone
» versionstringfalsenonenone
timeoutobjectfalsenoneTimeout defines an execution deadline structure for 04-channel handlers.This includes packet lifecycle handlers as well as the upgrade handshake handlers.A valid Timeout contains either one or both of a timestamp and block height (sequence).
» heightobjectfalsenoneNormally the RevisionHeight is incremented at each height while keepingRevisionNumber the same. However some consensus algorithms may choose toreset the height in certain conditions e.g. hard forks, state-machinebreaking changes In these cases, the RevisionNumber is incremented so thatheight continues to be monitonically increasing even as the RevisionHeightgets reset
»» revision_numberstring(uint64)falsenonenone
»» revision_heightstring(uint64)falsenonenone
» timestampstring(uint64)falsenonenone
next_sequence_sendstring(uint64)falsenonenone

Enumerated Values

PropertyValue
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

ibc.core.channel.v1.UpgradeFields

{
  "ordering": "ORDER_NONE_UNSPECIFIED",
  "connection_hops": [
    "string"
  ],
  "version": "string"
}
 

UpgradeFields are the fields in a channel end which may be changed during a channel upgrade.

Properties

NameTypeRequiredRestrictionsDescription
orderingstringfalsenone- ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order inwhich they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
connection_hops[string]falsenonenone
versionstringfalsenonenone

Enumerated Values

PropertyValue
orderingORDER_NONE_UNSPECIFIED
orderingORDER_UNORDERED
orderingORDER_ORDERED

cosmos.auth.v1beta1.AddressBytesToStringResponse

{
  "address_string": "string"
}
 

AddressBytesToStringResponse is the response type for AddressString rpc method.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
address_stringstringfalsenonenone

cosmos.auth.v1beta1.AddressStringToBytesResponse

{
  "address_bytes": "string"
}
 

AddressStringToBytesResponse is the response type for AddressBytes rpc method.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
address_bytesstring(byte)falsenonenone

cosmos.auth.v1beta1.BaseAccount

{
  "address": "string",
  "pub_key": {
    "type_url": "string",
    "value": "string"
  },
  "account_number": "string",
  "sequence": "string"
}
 

BaseAccount defines a base account type. It contains all the necessary fields for basic account functionality. Any custom account type should extend this type for additional functionality (e.g. vesting).

Properties

NameTypeRequiredRestrictionsDescription
addressstringfalsenonenone
pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
account_numberstring(uint64)falsenonenone
sequencestring(uint64)falsenonenone

cosmos.auth.v1beta1.Bech32PrefixResponse

{
  "bech32_prefix": "string"
}
 

Bech32PrefixResponse is the response type for Bech32Prefix rpc method.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
bech32_prefixstringfalsenonenone

cosmos.auth.v1beta1.Params

{
  "max_memo_characters": "string",
  "tx_sig_limit": "string",
  "tx_size_cost_per_byte": "string",
  "sig_verify_cost_ed25519": "string",
  "sig_verify_cost_secp256k1": "string"
}
 

Params defines the parameters for the auth module.

Properties

NameTypeRequiredRestrictionsDescription
max_memo_charactersstring(uint64)falsenonenone
tx_sig_limitstring(uint64)falsenonenone
tx_size_cost_per_bytestring(uint64)falsenonenone
sig_verify_cost_ed25519string(uint64)falsenonenone
sig_verify_cost_secp256k1string(uint64)falsenonenone

cosmos.auth.v1beta1.QueryAccountAddressByIDResponse

{
  "account_address": "string"
}
 

QueryAccountAddressByIDResponse is the response type for AccountAddressByID rpc method

Properties

NameTypeRequiredRestrictionsDescription
account_addressstringfalsenonenone

cosmos.auth.v1beta1.QueryAccountInfoResponse

{
  "info": {
    "address": "string",
    "pub_key": {
      "type_url": "string",
      "value": "string"
    },
    "account_number": "string",
    "sequence": "string"
  }
}
 

QueryAccountInfoResponse is the Query/AccountInfo response type.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
infoobjectfalsenoneinfo is the account info which is represented by BaseAccount.
» addressstringfalsenonenone
» pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» account_numberstring(uint64)falsenonenone
» sequencestring(uint64)falsenonenone

cosmos.auth.v1beta1.QueryAccountResponse

{
  "account": {
    "type_url": "string",
    "value": "string"
  }
}
 

QueryAccountResponse is the response type for the Query/Account RPC method.

Properties

NameTypeRequiredRestrictionsDescription
accountobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.auth.v1beta1.QueryAccountsResponse

{
  "accounts": [
    {
      "type_url": "string",
      "value": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAccountsResponse is the response type for the Query/Accounts RPC method.

Since: cosmos-sdk 0.43

Properties

NameTypeRequiredRestrictionsDescription
accounts[object]falsenonenone
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.auth.v1beta1.QueryModuleAccountByNameResponse

{
  "account": {
    "type_url": "string",
    "value": "string"
  }
}
 

QueryModuleAccountByNameResponse is the response type for the Query/ModuleAccountByName RPC method.

Properties

NameTypeRequiredRestrictionsDescription
accountobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.auth.v1beta1.QueryModuleAccountsResponse

{
  "accounts": [
    {
      "type_url": "string",
      "value": "string"
    }
  ]
}
 

QueryModuleAccountsResponse is the response type for the Query/ModuleAccounts RPC method.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
accounts[object]falsenonenone
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.auth.v1beta1.QueryParamsResponse

{
  "params": {
    "max_memo_characters": "string",
    "tx_sig_limit": "string",
    "tx_size_cost_per_byte": "string",
    "sig_verify_cost_ed25519": "string",
    "sig_verify_cost_secp256k1": "string"
  }
}
 

QueryParamsResponse is the response type for the Query/Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams defines the parameters of the module.
» max_memo_charactersstring(uint64)falsenonenone
» tx_sig_limitstring(uint64)falsenonenone
» tx_size_cost_per_bytestring(uint64)falsenonenone
» sig_verify_cost_ed25519string(uint64)falsenonenone
» sig_verify_cost_secp256k1string(uint64)falsenonenone

cosmos.authz.v1beta1.Grant

{
  "authorization": {
    "type_url": "string",
    "value": "string"
  },
  "expiration": "2019-08-24T14:15:22Z"
}
 

Grant gives permissions to execute the provide method with expiration time.

Properties

NameTypeRequiredRestrictionsDescription
authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
expirationstring(date-time)falsenonenone

cosmos.authz.v1beta1.GrantAuthorization

{
  "granter": "string",
  "grantee": "string",
  "authorization": {
    "type_url": "string",
    "value": "string"
  },
  "expiration": "2019-08-24T14:15:22Z"
}
 

GrantAuthorization extends a grant with both the addresses of the grantee and granter. It is used in genesis.proto and query.proto

Properties

NameTypeRequiredRestrictionsDescription
granterstringfalsenonenone
granteestringfalsenonenone
authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
expirationstring(date-time)falsenonenone

cosmos.authz.v1beta1.QueryGranteeGrantsResponse

{
  "grants": [
    {
      "granter": "string",
      "grantee": "string",
      "authorization": {
        "type_url": "string",
        "value": "string"
      },
      "expiration": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryGranteeGrantsResponse is the response type for the Query/GranteeGrants RPC method.

Properties

NameTypeRequiredRestrictionsDescription
grants[object]falsenonegrants is a list of grants granted to the grantee.
» GrantAuthorization extends a grant with both the addresses of the grantee and granter.
It is used in genesis.proto and query.protoobjectfalsenonenone
»» granterstringfalsenonenone
»» granteestringfalsenonenone
»» authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» expirationstring(date-time)falsenonenone
paginationobjectfalsenonepagination defines an pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.authz.v1beta1.QueryGranterGrantsResponse

{
  "grants": [
    {
      "granter": "string",
      "grantee": "string",
      "authorization": {
        "type_url": "string",
        "value": "string"
      },
      "expiration": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryGranterGrantsResponse is the response type for the Query/GranterGrants RPC method.

Properties

NameTypeRequiredRestrictionsDescription
grants[object]falsenonegrants is a list of grants granted by the granter.
» GrantAuthorization extends a grant with both the addresses of the grantee and granter.
It is used in genesis.proto and query.protoobjectfalsenonenone
»» granterstringfalsenonenone
»» granteestringfalsenonenone
»» authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» expirationstring(date-time)falsenonenone
paginationobjectfalsenonepagination defines an pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.authz.v1beta1.QueryGrantsResponse

{
  "grants": [
    {
      "authorization": {
        "type_url": "string",
        "value": "string"
      },
      "expiration": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryGrantsResponse is the response type for the Query/Authorizations RPC method.

Properties

NameTypeRequiredRestrictionsDescription
grants[object]falsenoneauthorizations is a list of grants granted for grantee by granter.
» authorizationobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» expirationstring(date-time)falsenonenone
paginationobjectfalsenonepagination defines an pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.bank.v1beta1.DenomOwner

{
  "address": "string",
  "balance": {
    "denom": "string",
    "amount": "string"
  }
}
 

DenomOwner defines structure representing an account that owns or holds a particular denominated token. It contains the account address and account balance of the denominated token.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
addressstringfalsenoneaddress defines the address that owns a particular denomination.
balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.bank.v1beta1.DenomUnit

{
  "denom": "string",
  "exponent": 0,
  "aliases": [
    "string"
  ]
}
 

DenomUnit represents a struct that describes a given denomination unit of the basic token.

Properties

NameTypeRequiredRestrictionsDescription
denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
aliases[string]falsenonenone

cosmos.bank.v1beta1.Metadata

{
  "description": "string",
  "denom_units": [
    {
      "denom": "string",
      "exponent": 0,
      "aliases": [
        "string"
      ]
    }
  ],
  "base": "string",
  "display": "string",
  "name": "string",
  "symbol": "string",
  "uri": "string",
  "uri_hash": "string"
}
 

Metadata represents a struct that describes a basic token.

Properties

NameTypeRequiredRestrictionsDescription
descriptionstringfalsenonenone
denom_units[object]falsenonenone
» denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
» exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
» aliases[string]falsenonenone
basestringfalsenonebase represents the base denom (should be the DenomUnit with exponent = 0).
displaystringfalsenonedisplay indicates the suggested denom that should bedisplayed in clients.
namestringfalsenoneSince: cosmos-sdk 0.43
symbolstringfalsenonesymbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43
uristringfalsenoneURI to a document (on or off-chain) that contains additional information. Optional.Since: cosmos-sdk 0.46
uri_hashstringfalsenoneURIHash is a sha256 hash of a document pointed by URI. It's used to verify thatthe document didn't change. Optional.Since: cosmos-sdk 0.46

cosmos.bank.v1beta1.Params

{
  "send_enabled": [
    {
      "denom": "string",
      "enabled": true
    }
  ],
  "default_send_enabled": true
}
 

Params defines the parameters for the bank module.

Properties

NameTypeRequiredRestrictionsDescription
send_enabled[object]falsenoneDeprecated: Use of SendEnabled in params is deprecated.For genesis, use the newly added send_enabled field in the genesis object.Storage, lookup, and manipulation of this information is now in the keeper.As of cosmos-sdk 0.47, this only exists for backwards compatibility of genesis files.
» denomstringfalsenonenone
» enabledbooleanfalsenonenone
default_send_enabledbooleanfalsenonenone

cosmos.bank.v1beta1.QueryAllBalancesResponse

{
  "balances": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllBalancesResponse is the response type for the Query/AllBalances RPC method.

Properties

NameTypeRequiredRestrictionsDescription
balances[object]falsenonebalances is the balances of all the coins.
» denomstringfalsenonenone
» amountstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.bank.v1beta1.QueryBalanceResponse

{
  "balance": {
    "denom": "string",
    "amount": "string"
  }
}
 

QueryBalanceResponse is the response type for the Query/Balance RPC method.

Properties

NameTypeRequiredRestrictionsDescription
balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.bank.v1beta1.QueryDenomMetadataByQueryStringResponse

{
  "metadata": {
    "description": "string",
    "denom_units": [
      {
        "denom": "string",
        "exponent": 0,
        "aliases": [
          "string"
        ]
      }
    ],
    "base": "string",
    "display": "string",
    "name": "string",
    "symbol": "string",
    "uri": "string",
    "uri_hash": "string"
  }
}
 

QueryDenomMetadataByQueryStringResponse is the response type for the Query/DenomMetadata RPC method. Identical with QueryDenomMetadataResponse but receives denom as query string in request.

Properties

NameTypeRequiredRestrictionsDescription
metadataobjectfalsenoneMetadata represents a struct that describesa basic token.
» descriptionstringfalsenonenone
» denom_units[object]falsenonenone
»» denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
»» exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
»» aliases[string]falsenonenone
» basestringfalsenonebase represents the base denom (should be the DenomUnit with exponent = 0).
» displaystringfalsenonedisplay indicates the suggested denom that should bedisplayed in clients.
» namestringfalsenoneSince: cosmos-sdk 0.43
» symbolstringfalsenonesymbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43
» uristringfalsenoneURI to a document (on or off-chain) that contains additional information. Optional.Since: cosmos-sdk 0.46
» uri_hashstringfalsenoneURIHash is a sha256 hash of a document pointed by URI. It's used to verify thatthe document didn't change. Optional.Since: cosmos-sdk 0.46

cosmos.bank.v1beta1.QueryDenomMetadataResponse

{
  "metadata": {
    "description": "string",
    "denom_units": [
      {
        "denom": "string",
        "exponent": 0,
        "aliases": [
          "string"
        ]
      }
    ],
    "base": "string",
    "display": "string",
    "name": "string",
    "symbol": "string",
    "uri": "string",
    "uri_hash": "string"
  }
}
 

QueryDenomMetadataResponse is the response type for the Query/DenomMetadata RPC method.

Properties

NameTypeRequiredRestrictionsDescription
metadataobjectfalsenoneMetadata represents a struct that describesa basic token.
» descriptionstringfalsenonenone
» denom_units[object]falsenonenone
»» denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
»» exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
»» aliases[string]falsenonenone
» basestringfalsenonebase represents the base denom (should be the DenomUnit with exponent = 0).
» displaystringfalsenonedisplay indicates the suggested denom that should bedisplayed in clients.
» namestringfalsenoneSince: cosmos-sdk 0.43
» symbolstringfalsenonesymbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43
» uristringfalsenoneURI to a document (on or off-chain) that contains additional information. Optional.Since: cosmos-sdk 0.46
» uri_hashstringfalsenoneURIHash is a sha256 hash of a document pointed by URI. It's used to verify thatthe document didn't change. Optional.Since: cosmos-sdk 0.46

cosmos.bank.v1beta1.QueryDenomOwnersResponse

{
  "denom_owners": [
    {
      "address": "string",
      "balance": {
        "denom": "string",
        "amount": "string"
      }
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryDenomOwnersResponse defines the RPC response of a DenomOwners RPC query.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
denom_owners[object]falsenonenone
» addressstringfalsenoneaddress defines the address that owns a particular denomination.
» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.bank.v1beta1.QueryDenomsMetadataResponse

{
  "metadatas": [
    {
      "description": "string",
      "denom_units": [
        {
          "denom": "string",
          "exponent": 0,
          "aliases": [
            "string"
          ]
        }
      ],
      "base": "string",
      "display": "string",
      "name": "string",
      "symbol": "string",
      "uri": "string",
      "uri_hash": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryDenomsMetadataResponse is the response type for the Query/DenomsMetadata RPC method.

Properties

NameTypeRequiredRestrictionsDescription
metadatas[object]falsenonemetadata provides the client information for all the registered tokens.
» descriptionstringfalsenonenone
» denom_units[object]falsenonenone
»» denomstringfalsenonedenom represents the string name of the given denom unit (e.g uatom).
»» exponentinteger(int64)falsenoneexponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 10^exponent base_denom(e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' withexponent = 6, thus: 1 atom = 10^6 uatom).
»» aliases[string]falsenonenone
» basestringfalsenonebase represents the base denom (should be the DenomUnit with exponent = 0).
» displaystringfalsenonedisplay indicates the suggested denom that should bedisplayed in clients.
» namestringfalsenoneSince: cosmos-sdk 0.43
» symbolstringfalsenonesymbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43
» uristringfalsenoneURI to a document (on or off-chain) that contains additional information. Optional.Since: cosmos-sdk 0.46
» uri_hashstringfalsenoneURIHash is a sha256 hash of a document pointed by URI. It's used to verify thatthe document didn't change. Optional.Since: cosmos-sdk 0.46
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.bank.v1beta1.QueryParamsResponse

{
  "params": {
    "send_enabled": [
      {
        "denom": "string",
        "enabled": true
      }
    ],
    "default_send_enabled": true
  }
}
 

QueryParamsResponse defines the response type for querying x/bank parameters.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams provides the parameters of the bank module.
» send_enabled[object]falsenoneDeprecated: Use of SendEnabled in params is deprecated.For genesis, use the newly added send_enabled field in the genesis object.Storage, lookup, and manipulation of this information is now in the keeper.As of cosmos-sdk 0.47, this only exists for backwards compatibility of genesis files.
»» denomstringfalsenonenone
»» enabledbooleanfalsenonenone
» default_send_enabledbooleanfalsenonenone

cosmos.bank.v1beta1.QuerySendEnabledResponse

{
  "send_enabled": [
    {
      "denom": "string",
      "enabled": true
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QuerySendEnabledResponse defines the RPC response of a SendEnable query.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
send_enabled[object]falsenonenone
» denomstringfalsenonenone
» enabledbooleanfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response. This field is onlypopulated if the denoms field in the request is empty.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.bank.v1beta1.QuerySpendableBalanceByDenomResponse

{
  "balance": {
    "denom": "string",
    "amount": "string"
  }
}
 

QuerySpendableBalanceByDenomResponse defines the gRPC response structure for querying an account's spendable balance for a specific denom.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.bank.v1beta1.QuerySpendableBalancesResponse

{
  "balances": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QuerySpendableBalancesResponse defines the gRPC response structure for querying an account's spendable balances.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
balances[object]falsenonebalances is the spendable balances of all the coins.
» denomstringfalsenonenone
» amountstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.bank.v1beta1.QuerySupplyOfResponse

{
  "amount": {
    "denom": "string",
    "amount": "string"
  }
}
 

QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC method.

Properties

NameTypeRequiredRestrictionsDescription
amountobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.bank.v1beta1.QueryTotalSupplyResponse

{
  "supply": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryTotalSupplyResponse is the response type for the Query/TotalSupply RPC method

Properties

NameTypeRequiredRestrictionsDescription
supply[object]falsenonenone
» denomstringfalsenonenone
» amountstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.Since: cosmos-sdk 0.43
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.bank.v1beta1.SendEnabled

{
  "denom": "string",
  "enabled": true
}
 

SendEnabled maps coin denom to a send_enabled status (whether a denom is sendable).

Properties

NameTypeRequiredRestrictionsDescription
denomstringfalsenonenone
enabledbooleanfalsenonenone

cosmos.base.v1beta1.DecCoin

{
  "denom": "string",
  "amount": "string"
}
 

DecCoin defines a token with a denomination and a decimal amount.

NOTE: The amount field is an Dec which implements the custom method signatures required by gogoproto.

Properties

NameTypeRequiredRestrictionsDescription
denomstringfalsenonenone
amountstringfalsenonenone

cosmos.distribution.v1beta1.DelegationDelegatorReward

{
  "validator_address": "string",
  "reward": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

DelegationDelegatorReward represents the properties of a delegator's delegation reward.

Properties

NameTypeRequiredRestrictionsDescription
validator_addressstringfalsenonenone
reward[object]falsenonenone
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.distribution.v1beta1.Params

{
  "community_tax": "string",
  "base_proposer_reward": "string",
  "bonus_proposer_reward": "string",
  "withdraw_addr_enabled": true
}
 

Params defines the set of params for the distribution module.

Properties

NameTypeRequiredRestrictionsDescription
community_taxstringfalsenonenone
base_proposer_rewardstringfalsenoneDeprecated: The base_proposer_reward field is deprecated and is no longer usedin the x/distribution module's reward mechanism.
bonus_proposer_rewardstringfalsenoneDeprecated: The bonus_proposer_reward field is deprecated and is no longer usedin the x/distribution module's reward mechanism.
withdraw_addr_enabledbooleanfalsenonenone

cosmos.distribution.v1beta1.QueryCommunityPoolResponse

{
  "pool": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

QueryCommunityPoolResponse is the response type for the Query/CommunityPool RPC method.

Properties

NameTypeRequiredRestrictionsDescription
pool[object]falsenonepool defines community pool's coins.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.distribution.v1beta1.QueryDelegationRewardsResponse

{
  "rewards": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

QueryDelegationRewardsResponse is the response type for the Query/DelegationRewards RPC method.

Properties

NameTypeRequiredRestrictionsDescription
rewards[object]falsenonerewards defines the rewards accrued by a delegation.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.distribution.v1beta1.QueryDelegationTotalRewardsResponse

{
  "rewards": [
    {
      "validator_address": "string",
      "reward": [
        {
          "denom": "string",
          "amount": "string"
        }
      ]
    }
  ],
  "total": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

QueryDelegationTotalRewardsResponse is the response type for the Query/DelegationTotalRewards RPC method.

Properties

NameTypeRequiredRestrictionsDescription
rewards[object]falsenonerewards defines all the rewards accrued by a delegator.
» validator_addressstringfalsenonenone
» reward[object]falsenonenone
»» denomstringfalsenonenone
»» amountstringfalsenonenone
total[object]falsenonetotal defines the sum of all the rewards.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.distribution.v1beta1.QueryDelegatorValidatorsResponse

{
  "validators": [
    "string"
  ]
}
 

QueryDelegatorValidatorsResponse is the response type for the Query/DelegatorValidators RPC method.

Properties

NameTypeRequiredRestrictionsDescription
validators[string]falsenonevalidators defines the validators a delegator is delegating for.

cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressResponse

{
  "withdraw_address": "string"
}
 

QueryDelegatorWithdrawAddressResponse is the response type for the Query/DelegatorWithdrawAddress RPC method.

Properties

NameTypeRequiredRestrictionsDescription
withdraw_addressstringfalsenonewithdraw_address defines the delegator address to query for.

cosmos.distribution.v1beta1.QueryParamsResponse

{
  "params": {
    "community_tax": "string",
    "base_proposer_reward": "string",
    "bonus_proposer_reward": "string",
    "withdraw_addr_enabled": true
  }
}
 

QueryParamsResponse is the response type for the Query/Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams defines the parameters of the module.
» community_taxstringfalsenonenone
» base_proposer_rewardstringfalsenoneDeprecated: The base_proposer_reward field is deprecated and is no longer usedin the x/distribution module's reward mechanism.
» bonus_proposer_rewardstringfalsenoneDeprecated: The bonus_proposer_reward field is deprecated and is no longer usedin the x/distribution module's reward mechanism.
» withdraw_addr_enabledbooleanfalsenonenone

cosmos.distribution.v1beta1.QueryValidatorCommissionResponse

{
  "commission": {
    "commission": [
      {
        "denom": "string",
        "amount": "string"
      }
    ]
  }
}
 

QueryValidatorCommissionResponse is the response type for the Query/ValidatorCommission RPC method

Properties

NameTypeRequiredRestrictionsDescription
commissionobjectfalsenonecommission defines the commission the validator received.
» commission[object]falsenonenone
»» denomstringfalsenonenone
»» amountstringfalsenonenone

cosmos.distribution.v1beta1.QueryValidatorDistributionInfoResponse

{
  "operator_address": "string",
  "self_bond_rewards": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "commission": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

QueryValidatorDistributionInfoResponse is the response type for the Query/ValidatorDistributionInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
operator_addressstringfalsenoneoperator_address defines the validator operator address.
self_bond_rewards[object]falsenoneself_bond_rewards defines the self delegations rewards.
» denomstringfalsenonenone
» amountstringfalsenonenone
commission[object]falsenonecommission defines the commission the validator received.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsResponse

{
  "rewards": {
    "rewards": [
      {
        "denom": "string",
        "amount": "string"
      }
    ]
  }
}
 

QueryValidatorOutstandingRewardsResponse is the response type for the Query/ValidatorOutstandingRewards RPC method.

Properties

NameTypeRequiredRestrictionsDescription
rewardsobjectfalsenoneValidatorOutstandingRewards represents outstanding (un-withdrawn) rewardsfor a validator inexpensive to track, allows simple sanity checks.
» rewards[object]falsenonenone
»» denomstringfalsenonenone
»» amountstringfalsenonenone

cosmos.distribution.v1beta1.QueryValidatorSlashesResponse

{
  "slashes": [
    {
      "validator_period": "string",
      "fraction": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryValidatorSlashesResponse is the response type for the Query/ValidatorSlashes RPC method.

Properties

NameTypeRequiredRestrictionsDescription
slashes[object]falsenoneslashes defines the slashes the validator received.
» validator_periodstring(uint64)falsenonenone
» fractionstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.distribution.v1beta1.ValidatorAccumulatedCommission

{
  "commission": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

ValidatorAccumulatedCommission represents accumulated commission for a validator kept as a running counter, can be withdrawn at any time.

Properties

NameTypeRequiredRestrictionsDescription
commission[object]falsenonenone
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.distribution.v1beta1.ValidatorOutstandingRewards

{
  "rewards": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

ValidatorOutstandingRewards represents outstanding (un-withdrawn) rewards for a validator inexpensive to track, allows simple sanity checks.

Properties

NameTypeRequiredRestrictionsDescription
rewards[object]falsenonenone
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.distribution.v1beta1.ValidatorSlashEvent

{
  "validator_period": "string",
  "fraction": "string"
}
 

ValidatorSlashEvent represents a validator slash event. Height is implicit within the store key. This is needed to calculate appropriate amount of staking tokens for delegations which are withdrawn after a slash has occurred.

Properties

NameTypeRequiredRestrictionsDescription
validator_periodstring(uint64)falsenonenone
fractionstringfalsenonenone

cosmos.evidence.v1beta1.QueryAllEvidenceResponse

{
  "evidence": [
    {
      "type_url": "string",
      "value": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllEvidenceResponse is the response type for the Query/AllEvidence RPC method.

Properties

NameTypeRequiredRestrictionsDescription
evidence[object]falsenoneevidence returns all evidences.
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.evidence.v1beta1.QueryEvidenceResponse

{
  "evidence": {
    "type_url": "string",
    "value": "string"
  }
}
 

QueryEvidenceResponse is the response type for the Query/Evidence RPC method.

Properties

NameTypeRequiredRestrictionsDescription
evidenceobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.feegrant.v1beta1.Grant

{
  "granter": "string",
  "grantee": "string",
  "allowance": {
    "type_url": "string",
    "value": "string"
  }
}
 

Grant is stored in the KVStore to record a grant with full context

Properties

NameTypeRequiredRestrictionsDescription
granterstringfalsenonegranter is the address of the user granting an allowance of their funds.
granteestringfalsenonegrantee is the address of the user being granted an allowance of another user's funds.
allowanceobjectfalsenoneallowance can be any of basic, periodic, allowed fee allowance.
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.feegrant.v1beta1.QueryAllowanceResponse

{
  "allowance": {
    "granter": "string",
    "grantee": "string",
    "allowance": {
      "type_url": "string",
      "value": "string"
    }
  }
}
 

QueryAllowanceResponse is the response type for the Query/Allowance RPC method.

Properties

NameTypeRequiredRestrictionsDescription
allowanceobjectfalsenoneallowance is a allowance granted for grantee by granter.
» granterstringfalsenonegranter is the address of the user granting an allowance of their funds.
» granteestringfalsenonegrantee is the address of the user being granted an allowance of another user's funds.
» allowanceobjectfalsenoneallowance can be any of basic, periodic, allowed fee allowance.
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.feegrant.v1beta1.QueryAllowancesByGranterResponse

{
  "allowances": [
    {
      "granter": "string",
      "grantee": "string",
      "allowance": {
        "type_url": "string",
        "value": "string"
      }
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllowancesByGranterResponse is the response type for the Query/AllowancesByGranter RPC method.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
allowances[object]falsenoneallowances that have been issued by the granter.
» Grant is stored in the KVStore to record a grant with full contextobjectfalsenonenone
»» granterstringfalsenonegranter is the address of the user granting an allowance of their funds.
»» granteestringfalsenonegrantee is the address of the user being granted an allowance of another user's funds.
»» allowanceobjectfalsenoneallowance can be any of basic, periodic, allowed fee allowance.
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
paginationobjectfalsenonepagination defines an pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.feegrant.v1beta1.QueryAllowancesResponse

{
  "allowances": [
    {
      "granter": "string",
      "grantee": "string",
      "allowance": {
        "type_url": "string",
        "value": "string"
      }
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryAllowancesResponse is the response type for the Query/Allowances RPC method.

Properties

NameTypeRequiredRestrictionsDescription
allowances[object]falsenoneallowances are allowance's granted for grantee by granter.
» Grant is stored in the KVStore to record a grant with full contextobjectfalsenonenone
»» granterstringfalsenonegranter is the address of the user granting an allowance of their funds.
»» granteestringfalsenonegrantee is the address of the user being granted an allowance of another user's funds.
»» allowanceobjectfalsenoneallowance can be any of basic, periodic, allowed fee allowance.
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
paginationobjectfalsenonepagination defines an pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.gov.v1beta1.Deposit

{
  "proposal_id": "string",
  "depositor": "string",
  "amount": [
    {
      "denom": "string",
      "amount": "string"
    }
  ]
}
 

Deposit defines an amount deposited by an account address to an active proposal.

Properties

NameTypeRequiredRestrictionsDescription
proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
depositorstringfalsenonedepositor defines the deposit addresses from the proposals.
amount[object]falsenoneamount to be deposited by depositor.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.gov.v1beta1.DepositParams

{
  "min_deposit": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "max_deposit_period": "string"
}
 

DepositParams defines the params for deposits on governance proposals.

Properties

NameTypeRequiredRestrictionsDescription
min_deposit[object]falsenoneMinimum deposit for a proposal to enter voting period.
» denomstringfalsenonenone
» amountstringfalsenonenone
max_deposit_periodstringfalsenoneMaximum period for Atom holders to deposit on a proposal. Initial value: 2months.

cosmos.gov.v1beta1.Proposal

{
  "proposal_id": "string",
  "content": {
    "type_url": "string",
    "value": "string"
  },
  "status": "PROPOSAL_STATUS_UNSPECIFIED",
  "final_tally_result": {
    "yes": "string",
    "abstain": "string",
    "no": "string",
    "no_with_veto": "string"
  },
  "submit_time": "2019-08-24T14:15:22Z",
  "deposit_end_time": "2019-08-24T14:15:22Z",
  "total_deposit": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "voting_start_time": "2019-08-24T14:15:22Z",
  "voting_end_time": "2019-08-24T14:15:22Z"
}
 

Proposal defines the core field members of a governance proposal.

Properties

NameTypeRequiredRestrictionsDescription
proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
contentobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
statusstringfalsenonestatus defines the proposal status.
final_tally_resultobjectfalsenonefinal_tally_result is the final tally result of the proposal. Whenquerying a proposal via gRPC, this field is not populated until theproposal's voting period has ended.
» yesstringfalsenoneyes is the number of yes votes on a proposal.
» abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
» nostringfalsenoneno is the number of no votes on a proposal.
» no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.
submit_timestring(date-time)falsenonesubmit_time is the time of proposal submission.
deposit_end_timestring(date-time)falsenonedeposit_end_time is the end time for deposition.
total_deposit[object]falsenonetotal_deposit is the total deposit on the proposal.
» denomstringfalsenonenone
» amountstringfalsenonenone
voting_start_timestring(date-time)falsenonevoting_start_time is the starting time to vote on a proposal.
voting_end_timestring(date-time)falsenonevoting_end_time is the end time of voting on a proposal.

Enumerated Values

PropertyValue
statusPROPOSAL_STATUS_UNSPECIFIED
statusPROPOSAL_STATUS_DEPOSIT_PERIOD
statusPROPOSAL_STATUS_VOTING_PERIOD
statusPROPOSAL_STATUS_PASSED
statusPROPOSAL_STATUS_REJECTED
statusPROPOSAL_STATUS_FAILED

cosmos.gov.v1beta1.ProposalStatus

"PROPOSAL_STATUS_UNSPECIFIED"
 

ProposalStatus enumerates the valid statuses of a proposal.

  • PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
  • PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit period.
  • PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting period.
  • PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has passed.
  • PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has been rejected.
  • PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has failed.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneProposalStatus enumerates the valid statuses of a proposal. - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status. - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the depositperiod. - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the votingperiod. - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that haspassed. - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that hasbeen rejected. - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that hasfailed.

Enumerated Values

PropertyValue
anonymousPROPOSAL_STATUS_UNSPECIFIED
anonymousPROPOSAL_STATUS_DEPOSIT_PERIOD
anonymousPROPOSAL_STATUS_VOTING_PERIOD
anonymousPROPOSAL_STATUS_PASSED
anonymousPROPOSAL_STATUS_REJECTED
anonymousPROPOSAL_STATUS_FAILED

cosmos.gov.v1beta1.QueryDepositResponse

{
  "deposit": {
    "proposal_id": "string",
    "depositor": "string",
    "amount": [
      {
        "denom": "string",
        "amount": "string"
      }
    ]
  }
}
 

QueryDepositResponse is the response type for the Query/Deposit RPC method.

Properties

NameTypeRequiredRestrictionsDescription
depositobjectfalsenoneDeposit defines an amount deposited by an account address to an activeproposal.
» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
» depositorstringfalsenonedepositor defines the deposit addresses from the proposals.
» amount[object]falsenoneamount to be deposited by depositor.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

cosmos.gov.v1beta1.QueryDepositsResponse

{
  "deposits": [
    {
      "proposal_id": "string",
      "depositor": "string",
      "amount": [
        {
          "denom": "string",
          "amount": "string"
        }
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryDepositsResponse is the response type for the Query/Deposits RPC method.

Properties

NameTypeRequiredRestrictionsDescription
deposits[object]falsenonedeposits defines the requested deposits.
» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
» depositorstringfalsenonedepositor defines the deposit addresses from the proposals.
» amount[object]falsenoneamount to be deposited by depositor.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.gov.v1beta1.QueryParamsResponse

{
  "voting_params": {
    "voting_period": "string"
  },
  "deposit_params": {
    "min_deposit": [
      {
        "denom": "string",
        "amount": "string"
      }
    ],
    "max_deposit_period": "string"
  },
  "tally_params": {
    "quorum": "string",
    "threshold": "string",
    "veto_threshold": "string"
  }
}
 

QueryParamsResponse is the response type for the Query/Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
voting_paramsobjectfalsenonevoting_params defines the parameters related to voting.
» voting_periodstringfalsenoneDuration of the voting period.
deposit_paramsobjectfalsenonedeposit_params defines the parameters related to deposit.
» min_deposit[object]falsenoneMinimum deposit for a proposal to enter voting period.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» max_deposit_periodstringfalsenoneMaximum period for Atom holders to deposit on a proposal. Initial value: 2months.
tally_paramsobjectfalsenonetally_params defines the parameters related to tally.
» quorumstring(byte)falsenoneMinimum percentage of total stake needed to vote for a result to beconsidered valid.
» thresholdstring(byte)falsenoneMinimum proportion of Yes votes for proposal to pass. Default value: 0.5.
» veto_thresholdstring(byte)falsenoneMinimum value of Veto votes to Total votes ratio for proposal to bevetoed. Default value: 1/3.

cosmos.gov.v1beta1.QueryProposalResponse

{
  "proposal": {
    "proposal_id": "string",
    "content": {
      "type_url": "string",
      "value": "string"
    },
    "status": "PROPOSAL_STATUS_UNSPECIFIED",
    "final_tally_result": {
      "yes": "string",
      "abstain": "string",
      "no": "string",
      "no_with_veto": "string"
    },
    "submit_time": "2019-08-24T14:15:22Z",
    "deposit_end_time": "2019-08-24T14:15:22Z",
    "total_deposit": [
      {
        "denom": "string",
        "amount": "string"
      }
    ],
    "voting_start_time": "2019-08-24T14:15:22Z",
    "voting_end_time": "2019-08-24T14:15:22Z"
  }
}
 

QueryProposalResponse is the response type for the Query/Proposal RPC method.

Properties

NameTypeRequiredRestrictionsDescription
proposalobjectfalsenoneProposal defines the core field members of a governance proposal.
» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
» contentobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» statusstringfalsenonestatus defines the proposal status.
» final_tally_resultobjectfalsenonefinal_tally_result is the final tally result of the proposal. Whenquerying a proposal via gRPC, this field is not populated until theproposal's voting period has ended.
»» yesstringfalsenoneyes is the number of yes votes on a proposal.
»» abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
»» nostringfalsenoneno is the number of no votes on a proposal.
»» no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.
» submit_timestring(date-time)falsenonesubmit_time is the time of proposal submission.
» deposit_end_timestring(date-time)falsenonedeposit_end_time is the end time for deposition.
» total_deposit[object]falsenonetotal_deposit is the total deposit on the proposal.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» voting_start_timestring(date-time)falsenonevoting_start_time is the starting time to vote on a proposal.
» voting_end_timestring(date-time)falsenonevoting_end_time is the end time of voting on a proposal.

Enumerated Values

PropertyValue
statusPROPOSAL_STATUS_UNSPECIFIED
statusPROPOSAL_STATUS_DEPOSIT_PERIOD
statusPROPOSAL_STATUS_VOTING_PERIOD
statusPROPOSAL_STATUS_PASSED
statusPROPOSAL_STATUS_REJECTED
statusPROPOSAL_STATUS_FAILED

cosmos.gov.v1beta1.QueryProposalsResponse

{
  "proposals": [
    {
      "proposal_id": "string",
      "content": {
        "type_url": "string",
        "value": "string"
      },
      "status": "PROPOSAL_STATUS_UNSPECIFIED",
      "final_tally_result": {
        "yes": "string",
        "abstain": "string",
        "no": "string",
        "no_with_veto": "string"
      },
      "submit_time": "2019-08-24T14:15:22Z",
      "deposit_end_time": "2019-08-24T14:15:22Z",
      "total_deposit": [
        {
          "denom": "string",
          "amount": "string"
        }
      ],
      "voting_start_time": "2019-08-24T14:15:22Z",
      "voting_end_time": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryProposalsResponse is the response type for the Query/Proposals RPC method.

Properties

NameTypeRequiredRestrictionsDescription
proposals[object]falsenoneproposals defines all the requested governance proposals.
» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
» contentobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» statusstringfalsenonestatus defines the proposal status.
» final_tally_resultobjectfalsenonefinal_tally_result is the final tally result of the proposal. Whenquerying a proposal via gRPC, this field is not populated until theproposal's voting period has ended.
»» yesstringfalsenoneyes is the number of yes votes on a proposal.
»» abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
»» nostringfalsenoneno is the number of no votes on a proposal.
»» no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.
» submit_timestring(date-time)falsenonesubmit_time is the time of proposal submission.
» deposit_end_timestring(date-time)falsenonedeposit_end_time is the end time for deposition.
» total_deposit[object]falsenonetotal_deposit is the total deposit on the proposal.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» voting_start_timestring(date-time)falsenonevoting_start_time is the starting time to vote on a proposal.
» voting_end_timestring(date-time)falsenonevoting_end_time is the end time of voting on a proposal.
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusPROPOSAL_STATUS_UNSPECIFIED
statusPROPOSAL_STATUS_DEPOSIT_PERIOD
statusPROPOSAL_STATUS_VOTING_PERIOD
statusPROPOSAL_STATUS_PASSED
statusPROPOSAL_STATUS_REJECTED
statusPROPOSAL_STATUS_FAILED

cosmos.gov.v1beta1.QueryTallyResultResponse

{
  "tally": {
    "yes": "string",
    "abstain": "string",
    "no": "string",
    "no_with_veto": "string"
  }
}
 

QueryTallyResultResponse is the response type for the Query/Tally RPC method.

Properties

NameTypeRequiredRestrictionsDescription
tallyobjectfalsenonetally defines the requested tally.
» yesstringfalsenoneyes is the number of yes votes on a proposal.
» abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
» nostringfalsenoneno is the number of no votes on a proposal.
» no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.

cosmos.gov.v1beta1.QueryVoteResponse

{
  "vote": {
    "proposal_id": "string",
    "voter": "string",
    "option": "VOTE_OPTION_UNSPECIFIED",
    "options": [
      {
        "option": "VOTE_OPTION_UNSPECIFIED",
        "weight": "string"
      }
    ]
  }
}
 

QueryVoteResponse is the response type for the Query/Vote RPC method.

Properties

NameTypeRequiredRestrictionsDescription
voteobjectfalsenoneVote defines a vote on a governance proposal.A Vote consists of a proposal ID, the voter, and the vote option.
» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
» voterstringfalsenonevoter is the voter address of the proposal.
» optionstringfalsenoneDeprecated: Prefer to use options instead. This field is set in queriesif and only if len(options) == 1 and that option has weight 1. In allother cases, this field will default to VOTE_OPTION_UNSPECIFIED.
» options[object]falsenoneoptions is the weighted vote options.Since: cosmos-sdk 0.43
»» optionstringfalsenoneoption defines the valid vote options, it must not contain duplicate vote options.
»» weightstringfalsenoneweight is the vote weight associated with the vote option.

Enumerated Values

PropertyValue
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO

cosmos.gov.v1beta1.QueryVotesResponse

{
  "votes": [
    {
      "proposal_id": "string",
      "voter": "string",
      "option": "VOTE_OPTION_UNSPECIFIED",
      "options": [
        {
          "option": "VOTE_OPTION_UNSPECIFIED",
          "weight": "string"
        }
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryVotesResponse is the response type for the Query/Votes RPC method.

Properties

NameTypeRequiredRestrictionsDescription
votes[object]falsenonevotes defines the queried votes.
» proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
» voterstringfalsenonevoter is the voter address of the proposal.
» optionstringfalsenoneDeprecated: Prefer to use options instead. This field is set in queriesif and only if len(options) == 1 and that option has weight 1. In allother cases, this field will default to VOTE_OPTION_UNSPECIFIED.
» options[object]falsenoneoptions is the weighted vote options.Since: cosmos-sdk 0.43
»» optionstringfalsenoneoption defines the valid vote options, it must not contain duplicate vote options.
»» weightstringfalsenoneweight is the vote weight associated with the vote option.
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO

cosmos.gov.v1beta1.TallyParams

{
  "quorum": "string",
  "threshold": "string",
  "veto_threshold": "string"
}
 

TallyParams defines the params for tallying votes on governance proposals.

Properties

NameTypeRequiredRestrictionsDescription
quorumstring(byte)falsenoneMinimum percentage of total stake needed to vote for a result to beconsidered valid.
thresholdstring(byte)falsenoneMinimum proportion of Yes votes for proposal to pass. Default value: 0.5.
veto_thresholdstring(byte)falsenoneMinimum value of Veto votes to Total votes ratio for proposal to bevetoed. Default value: 1/3.

cosmos.gov.v1beta1.TallyResult

{
  "yes": "string",
  "abstain": "string",
  "no": "string",
  "no_with_veto": "string"
}
 

TallyResult defines a standard tally for a governance proposal.

Properties

NameTypeRequiredRestrictionsDescription
yesstringfalsenoneyes is the number of yes votes on a proposal.
abstainstringfalsenoneabstain is the number of abstain votes on a proposal.
nostringfalsenoneno is the number of no votes on a proposal.
no_with_vetostringfalsenoneno_with_veto is the number of no with veto votes on a proposal.

cosmos.gov.v1beta1.Vote

{
  "proposal_id": "string",
  "voter": "string",
  "option": "VOTE_OPTION_UNSPECIFIED",
  "options": [
    {
      "option": "VOTE_OPTION_UNSPECIFIED",
      "weight": "string"
    }
  ]
}
 

Vote defines a vote on a governance proposal. A Vote consists of a proposal ID, the voter, and the vote option.

Properties

NameTypeRequiredRestrictionsDescription
proposal_idstring(uint64)falsenoneproposal_id defines the unique id of the proposal.
voterstringfalsenonevoter is the voter address of the proposal.
optionstringfalsenoneDeprecated: Prefer to use options instead. This field is set in queriesif and only if len(options) == 1 and that option has weight 1. In allother cases, this field will default to VOTE_OPTION_UNSPECIFIED.
options[object]falsenoneoptions is the weighted vote options.Since: cosmos-sdk 0.43
» optionstringfalsenoneoption defines the valid vote options, it must not contain duplicate vote options.
» weightstringfalsenoneweight is the vote weight associated with the vote option.

Enumerated Values

PropertyValue
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO

cosmos.gov.v1beta1.VoteOption

"VOTE_OPTION_UNSPECIFIED"
 

VoteOption enumerates the valid vote options for a given governance proposal.

  • VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
  • VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
  • VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
  • VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
  • VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneVoteOption enumerates the valid vote options for a given governance proposal. - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option. - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option. - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option. - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option. - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.

Enumerated Values

PropertyValue
anonymousVOTE_OPTION_UNSPECIFIED
anonymousVOTE_OPTION_YES
anonymousVOTE_OPTION_ABSTAIN
anonymousVOTE_OPTION_NO
anonymousVOTE_OPTION_NO_WITH_VETO

cosmos.gov.v1beta1.VotingParams

{
  "voting_period": "string"
}
 

VotingParams defines the params for voting on governance proposals.

Properties

NameTypeRequiredRestrictionsDescription
voting_periodstringfalsenoneDuration of the voting period.

cosmos.gov.v1beta1.WeightedVoteOption

{
  "option": "VOTE_OPTION_UNSPECIFIED",
  "weight": "string"
}
 

WeightedVoteOption defines a unit of vote for vote split.

Since: cosmos-sdk 0.43

Properties

NameTypeRequiredRestrictionsDescription
optionstringfalsenoneoption defines the valid vote options, it must not contain duplicate vote options.
weightstringfalsenoneweight is the vote weight associated with the vote option.

Enumerated Values

PropertyValue
optionVOTE_OPTION_UNSPECIFIED
optionVOTE_OPTION_YES
optionVOTE_OPTION_ABSTAIN
optionVOTE_OPTION_NO
optionVOTE_OPTION_NO_WITH_VETO

cosmos.mint.v1beta1.Params

{
  "mint_denom": "string",
  "inflation_rate_change": "string",
  "inflation_max": "string",
  "inflation_min": "string",
  "goal_bonded": "string",
  "blocks_per_year": "string"
}
 

Params defines the parameters for the x/mint module.

Properties

NameTypeRequiredRestrictionsDescription
mint_denomstringfalsenonenone
inflation_rate_changestringfalsenonenone
inflation_maxstringfalsenonenone
inflation_minstringfalsenonenone
goal_bondedstringfalsenonenone
blocks_per_yearstring(uint64)falsenonenone

cosmos.mint.v1beta1.QueryAnnualProvisionsResponse

{
  "annual_provisions": "string"
}
 

QueryAnnualProvisionsResponse is the response type for the Query/AnnualProvisions RPC method.

Properties

NameTypeRequiredRestrictionsDescription
annual_provisionsstring(byte)falsenoneannual_provisions is the current minting annual provisions value.

cosmos.mint.v1beta1.QueryInflationResponse

{
  "inflation": "string"
}
 

QueryInflationResponse is the response type for the Query/Inflation RPC method.

Properties

NameTypeRequiredRestrictionsDescription
inflationstring(byte)falsenoneinflation is the current minting inflation value.

cosmos.mint.v1beta1.QueryParamsResponse

{
  "params": {
    "mint_denom": "string",
    "inflation_rate_change": "string",
    "inflation_max": "string",
    "inflation_min": "string",
    "goal_bonded": "string",
    "blocks_per_year": "string"
  }
}
 

QueryParamsResponse is the response type for the Query/Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams defines the parameters of the module.
» mint_denomstringfalsenonenone
» inflation_rate_changestringfalsenonenone
» inflation_maxstringfalsenonenone
» inflation_minstringfalsenonenone
» goal_bondedstringfalsenonenone
» blocks_per_yearstring(uint64)falsenonenone

cosmos.params.v1beta1.ParamChange

{
  "subspace": "string",
  "key": "string",
  "value": "string"
}
 

ParamChange defines an individual parameter change, for use in ParameterChangeProposal.

Properties

NameTypeRequiredRestrictionsDescription
subspacestringfalsenonenone
keystringfalsenonenone
valuestringfalsenonenone

cosmos.params.v1beta1.QueryParamsResponse

{
  "param": {
    "subspace": "string",
    "key": "string",
    "value": "string"
  }
}
 

QueryParamsResponse is response type for the Query/Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramobjectfalsenoneparam defines the queried parameter.
» subspacestringfalsenonenone
» keystringfalsenonenone
» valuestringfalsenonenone

cosmos.params.v1beta1.QuerySubspacesResponse

{
  "subspaces": [
    {
      "subspace": "string",
      "keys": [
        "string"
      ]
    }
  ]
}
 

QuerySubspacesResponse defines the response types for querying for all registered subspaces and all keys for a subspace.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
subspaces[object]falsenonenone
» subspacestringfalsenonenone
» keys[string]falsenonenone

cosmos.params.v1beta1.Subspace

{
  "subspace": "string",
  "keys": [
    "string"
  ]
}
 

Subspace defines a parameter subspace name and all the keys that exist for the subspace.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
subspacestringfalsenonenone
keys[string]falsenonenone

cosmos.slashing.v1beta1.Params

{
  "signed_blocks_window": "string",
  "min_signed_per_window": "string",
  "downtime_jail_duration": "string",
  "slash_fraction_double_sign": "string",
  "slash_fraction_downtime": "string"
}
 

Params represents the parameters used for by the slashing module.

Properties

NameTypeRequiredRestrictionsDescription
signed_blocks_windowstring(int64)falsenonenone
min_signed_per_windowstring(byte)falsenonenone
downtime_jail_durationstringfalsenonenone
slash_fraction_double_signstring(byte)falsenonenone
slash_fraction_downtimestring(byte)falsenonenone

cosmos.slashing.v1beta1.QueryParamsResponse

{
  "params": {
    "signed_blocks_window": "string",
    "min_signed_per_window": "string",
    "downtime_jail_duration": "string",
    "slash_fraction_double_sign": "string",
    "slash_fraction_downtime": "string"
  }
}
 

QueryParamsResponse is the response type for the Query/Params RPC method

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneParams represents the parameters used for by the slashing module.
» signed_blocks_windowstring(int64)falsenonenone
» min_signed_per_windowstring(byte)falsenonenone
» downtime_jail_durationstringfalsenonenone
» slash_fraction_double_signstring(byte)falsenonenone
» slash_fraction_downtimestring(byte)falsenonenone

cosmos.slashing.v1beta1.QuerySigningInfoResponse

{
  "val_signing_info": {
    "address": "string",
    "start_height": "string",
    "index_offset": "string",
    "jailed_until": "2019-08-24T14:15:22Z",
    "tombstoned": true,
    "missed_blocks_counter": "string"
  }
}
 

QuerySigningInfoResponse is the response type for the Query/SigningInfo RPC method

Properties

NameTypeRequiredRestrictionsDescription
val_signing_infoobjectfalsenoneValidatorSigningInfo defines a validator's signing info for monitoring theirliveness activity.
» addressstringfalsenonenone
» start_heightstring(int64)falsenonenone
» index_offsetstring(int64)falsenoneIndex which is incremented every time a validator is bonded in a block andmay have signed a pre-commit or not. This in conjunction with thesigned_blocks_window param determines the index in the missed block bitmap.
» jailed_untilstring(date-time)falsenoneTimestamp until which the validator is jailed due to liveness downtime.
» tombstonedbooleanfalsenoneWhether or not a validator has been tombstoned (killed out of validatorset). It is set once the validator commits an equivocation or for any otherconfigured misbehavior.
» missed_blocks_counterstring(int64)falsenoneA counter of missed (unsigned) blocks. It is used to avoid unnecessaryreads in the missed block bitmap.

cosmos.slashing.v1beta1.QuerySigningInfosResponse

{
  "info": [
    {
      "address": "string",
      "start_height": "string",
      "index_offset": "string",
      "jailed_until": "2019-08-24T14:15:22Z",
      "tombstoned": true,
      "missed_blocks_counter": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QuerySigningInfosResponse is the response type for the Query/SigningInfos RPC method

Properties

NameTypeRequiredRestrictionsDescription
info[object]falsenonenone
» addressstringfalsenonenone
» start_heightstring(int64)falsenonenone
» index_offsetstring(int64)falsenoneIndex which is incremented every time a validator is bonded in a block andmay have signed a pre-commit or not. This in conjunction with thesigned_blocks_window param determines the index in the missed block bitmap.
» jailed_untilstring(date-time)falsenoneTimestamp until which the validator is jailed due to liveness downtime.
» tombstonedbooleanfalsenoneWhether or not a validator has been tombstoned (killed out of validatorset). It is set once the validator commits an equivocation or for any otherconfigured misbehavior.
» missed_blocks_counterstring(int64)falsenoneA counter of missed (unsigned) blocks. It is used to avoid unnecessaryreads in the missed block bitmap.
paginationobjectfalsenonePageResponse is to be embedded in gRPC response messages where thecorresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.slashing.v1beta1.ValidatorSigningInfo

{
  "address": "string",
  "start_height": "string",
  "index_offset": "string",
  "jailed_until": "2019-08-24T14:15:22Z",
  "tombstoned": true,
  "missed_blocks_counter": "string"
}
 

ValidatorSigningInfo defines a validator's signing info for monitoring their liveness activity.

Properties

NameTypeRequiredRestrictionsDescription
addressstringfalsenonenone
start_heightstring(int64)falsenonenone
index_offsetstring(int64)falsenoneIndex which is incremented every time a validator is bonded in a block andmay have signed a pre-commit or not. This in conjunction with thesigned_blocks_window param determines the index in the missed block bitmap.
jailed_untilstring(date-time)falsenoneTimestamp until which the validator is jailed due to liveness downtime.
tombstonedbooleanfalsenoneWhether or not a validator has been tombstoned (killed out of validatorset). It is set once the validator commits an equivocation or for any otherconfigured misbehavior.
missed_blocks_counterstring(int64)falsenoneA counter of missed (unsigned) blocks. It is used to avoid unnecessaryreads in the missed block bitmap.

cosmos.staking.v1beta1.BondStatus

"BOND_STATUS_UNSPECIFIED"
 

BondStatus is the status of a validator.

  • BOND_STATUS_UNSPECIFIED: UNSPECIFIED defines an invalid validator status.
  • BOND_STATUS_UNBONDED: UNBONDED defines a validator that is not bonded.
  • BOND_STATUS_UNBONDING: UNBONDING defines a validator that is unbonding.
  • BOND_STATUS_BONDED: BONDED defines a validator that is bonded.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneBondStatus is the status of a validator. - BOND_STATUS_UNSPECIFIED: UNSPECIFIED defines an invalid validator status. - BOND_STATUS_UNBONDED: UNBONDED defines a validator that is not bonded. - BOND_STATUS_UNBONDING: UNBONDING defines a validator that is unbonding. - BOND_STATUS_BONDED: BONDED defines a validator that is bonded.

Enumerated Values

PropertyValue
anonymousBOND_STATUS_UNSPECIFIED
anonymousBOND_STATUS_UNBONDED
anonymousBOND_STATUS_UNBONDING
anonymousBOND_STATUS_BONDED

cosmos.staking.v1beta1.Commission

{
  "commission_rates": {
    "rate": "string",
    "max_rate": "string",
    "max_change_rate": "string"
  },
  "update_time": "2019-08-24T14:15:22Z"
}
 

Commission defines commission parameters for a given validator.

Properties

NameTypeRequiredRestrictionsDescription
commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.

cosmos.staking.v1beta1.CommissionRates

{
  "rate": "string",
  "max_rate": "string",
  "max_change_rate": "string"
}
 

CommissionRates defines the initial commission rates to be used for creating a validator.

Properties

NameTypeRequiredRestrictionsDescription
ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.

cosmos.staking.v1beta1.Delegation

{
  "delegator_address": "string",
  "validator_address": "string",
  "shares": "string"
}
 

Delegation represents the bond with tokens held by an account. It is owned by one delegator, and is associated with the voting power of one validator.

Properties

NameTypeRequiredRestrictionsDescription
delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
sharesstringfalsenoneshares define the delegation shares received.

cosmos.staking.v1beta1.DelegationResponse

{
  "delegation": {
    "delegator_address": "string",
    "validator_address": "string",
    "shares": "string"
  },
  "balance": {
    "denom": "string",
    "amount": "string"
  }
}
 

DelegationResponse is equivalent to Delegation except that it contains a balance in addition to shares which is more suitable for client responses.

Properties

NameTypeRequiredRestrictionsDescription
delegationobjectfalsenoneDelegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator.
» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
» sharesstringfalsenoneshares define the delegation shares received.
balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
» denomstringfalsenonenone
» amountstringfalsenonenone

cosmos.staking.v1beta1.Description

{
  "moniker": "string",
  "identity": "string",
  "website": "string",
  "security_contact": "string",
  "details": "string"
}
 

Description defines a validator description.

Properties

NameTypeRequiredRestrictionsDescription
monikerstringfalsenonemoniker defines a human-readable name for the validator.
identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
websitestringfalsenonewebsite defines an optional website link.
security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
detailsstringfalsenonedetails define other optional details.

cosmos.staking.v1beta1.HistoricalInfo

{
  "header": {
    "version": {
      "block": "string",
      "app": "string"
    },
    "chain_id": "string",
    "height": "string",
    "time": "2019-08-24T14:15:22Z",
    "last_block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "last_commit_hash": "string",
    "data_hash": "string",
    "validators_hash": "string",
    "next_validators_hash": "string",
    "consensus_hash": "string",
    "app_hash": "string",
    "last_results_hash": "string",
    "evidence_hash": "string",
    "proposer_address": "string"
  },
  "valset": [
    {
      "operator_address": "string",
      "consensus_pubkey": {
        "type_url": "string",
        "value": "string"
      },
      "jailed": true,
      "status": "BOND_STATUS_UNSPECIFIED",
      "tokens": "string",
      "delegator_shares": "string",
      "description": {
        "moniker": "string",
        "identity": "string",
        "website": "string",
        "security_contact": "string",
        "details": "string"
      },
      "unbonding_height": "string",
      "unbonding_time": "2019-08-24T14:15:22Z",
      "commission": {
        "commission_rates": {
          "rate": "string",
          "max_rate": "string",
          "max_change_rate": "string"
        },
        "update_time": "2019-08-24T14:15:22Z"
      },
      "min_self_delegation": "string",
      "unbonding_on_hold_ref_count": "string",
      "unbonding_ids": [
        "string"
      ]
    }
  ]
}
 

HistoricalInfo contains header and validator information for a given block. It is stored as part of staking module's state, which persists the n most recent HistoricalInfo (n is set by the staking module's historical_entries parameter).

Properties

NameTypeRequiredRestrictionsDescription
headerobjectfalsenoneHeader defines the structure of a block header.
» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»» blockstring(uint64)falsenonenone
»» appstring(uint64)falsenonenone
» chain_idstringfalsenonenone
» heightstring(int64)falsenonenone
» timestring(date-time)falsenonenone
» last_block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» last_commit_hashstring(byte)falsenonenone
» data_hashstring(byte)falsenonenone
» validators_hashstring(byte)falsenonenone
» next_validators_hashstring(byte)falsenonenone
» consensus_hashstring(byte)falsenonenone
» app_hashstring(byte)falsenonenone
» last_results_hashstring(byte)falsenonenone
» evidence_hashstring(byte)falsenonenone
» proposer_addressstring(byte)falsenonenone
valset[object]falsenonenone
» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
» descriptionobjectfalsenonedescription defines the description terms for the validator.
»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»» websitestringfalsenonewebsite defines an optional website link.
»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»» detailsstringfalsenonedetails define other optional details.
» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
» commissionobjectfalsenonecommission defines the commission parameters.
»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
» unbonding_on_hold_ref_countstring(int64)falsenonenone
» unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

cosmos.staking.v1beta1.Params

{
  "unbonding_time": "string",
  "max_validators": 0,
  "max_entries": 0,
  "historical_entries": 0,
  "bond_denom": "string",
  "min_commission_rate": "string"
}
 

Params defines the parameters for the x/staking module.

Properties

NameTypeRequiredRestrictionsDescription
unbonding_timestringfalsenoneunbonding_time is the time duration of unbonding.
max_validatorsinteger(int64)falsenonemax_validators is the maximum number of validators.
max_entriesinteger(int64)falsenonemax_entries is the max entries for either unbonding delegation or redelegation (per pair/trio).
historical_entriesinteger(int64)falsenonehistorical_entries is the number of historical entries to persist.
bond_denomstringfalsenonebond_denom defines the bondable coin denomination.
min_commission_ratestringfalsenonenone

cosmos.staking.v1beta1.Pool

{
  "not_bonded_tokens": "string",
  "bonded_tokens": "string"
}
 

Pool is used for tracking bonded and not-bonded token supply of the bond denomination.

Properties

NameTypeRequiredRestrictionsDescription
not_bonded_tokensstringfalsenonenone
bonded_tokensstringfalsenonenone

cosmos.staking.v1beta1.QueryDelegationResponse

{
  "delegation_response": {
    "delegation": {
      "delegator_address": "string",
      "validator_address": "string",
      "shares": "string"
    },
    "balance": {
      "denom": "string",
      "amount": "string"
    }
  }
}
 

QueryDelegationResponse is response type for the Query/Delegation RPC method.

Properties

NameTypeRequiredRestrictionsDescription
delegation_responseobjectfalsenoneDelegationResponse is equivalent to Delegation except that it contains abalance in addition to shares which is more suitable for client responses.
» delegationobjectfalsenoneDelegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator.
»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»» sharesstringfalsenoneshares define the delegation shares received.
» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone

cosmos.staking.v1beta1.QueryDelegatorDelegationsResponse

{
  "delegation_responses": [
    {
      "delegation": {
        "delegator_address": "string",
        "validator_address": "string",
        "shares": "string"
      },
      "balance": {
        "denom": "string",
        "amount": "string"
      }
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryDelegatorDelegationsResponse is response type for the Query/DelegatorDelegations RPC method.

Properties

NameTypeRequiredRestrictionsDescription
delegation_responses[object]falsenonedelegation_responses defines all the delegations' info of a delegator.
» delegationobjectfalsenoneDelegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator.
»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»» sharesstringfalsenoneshares define the delegation shares received.
» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsResponse

{
  "unbonding_responses": [
    {
      "delegator_address": "string",
      "validator_address": "string",
      "entries": [
        {
          "creation_height": "string",
          "completion_time": "2019-08-24T14:15:22Z",
          "initial_balance": "string",
          "balance": "string",
          "unbonding_id": "string",
          "unbonding_on_hold_ref_count": "string"
        }
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryUnbondingDelegatorDelegationsResponse is response type for the Query/UnbondingDelegatorDelegations RPC method.

Properties

NameTypeRequiredRestrictionsDescription
unbonding_responses[object]falsenonenone
» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
» entries[object]falsenoneentries are the unbonding delegation entries.
»» creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
»» completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
»» initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
»» balancestringfalsenonebalance defines the tokens to receive at completion.
»» unbonding_idstring(uint64)falsenonenone
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.staking.v1beta1.QueryDelegatorValidatorResponse

{
  "validator": {
    "operator_address": "string",
    "consensus_pubkey": {
      "type_url": "string",
      "value": "string"
    },
    "jailed": true,
    "status": "BOND_STATUS_UNSPECIFIED",
    "tokens": "string",
    "delegator_shares": "string",
    "description": {
      "moniker": "string",
      "identity": "string",
      "website": "string",
      "security_contact": "string",
      "details": "string"
    },
    "unbonding_height": "string",
    "unbonding_time": "2019-08-24T14:15:22Z",
    "commission": {
      "commission_rates": {
        "rate": "string",
        "max_rate": "string",
        "max_change_rate": "string"
      },
      "update_time": "2019-08-24T14:15:22Z"
    },
    "min_self_delegation": "string",
    "unbonding_on_hold_ref_count": "string",
    "unbonding_ids": [
      "string"
    ]
  }
}
 

QueryDelegatorValidatorResponse response type for the Query/DelegatorValidator RPC method.

Properties

NameTypeRequiredRestrictionsDescription
validatorobjectfalsenoneValidator defines a validator, together with the total amount of theValidator's bond shares and their exchange rate to coins. Slashing results ina decrease in the exchange rate, allowing correct calculation of futureundelegations without iterating over delegators. When coins are delegated tothis validator, the validator is credited with a delegation whose number ofbond shares is based on the amount of coins delegated divided by the currentexchange rate. Voting power can be calculated as total bonded sharesmultiplied by exchange rate.
» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
» descriptionobjectfalsenonedescription defines the description terms for the validator.
»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»» websitestringfalsenonewebsite defines an optional website link.
»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»» detailsstringfalsenonedetails define other optional details.
» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
» commissionobjectfalsenonecommission defines the commission parameters.
»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
» unbonding_on_hold_ref_countstring(int64)falsenonenone
» unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

cosmos.staking.v1beta1.QueryDelegatorValidatorsResponse

{
  "validators": [
    {
      "operator_address": "string",
      "consensus_pubkey": {
        "type_url": "string",
        "value": "string"
      },
      "jailed": true,
      "status": "BOND_STATUS_UNSPECIFIED",
      "tokens": "string",
      "delegator_shares": "string",
      "description": {
        "moniker": "string",
        "identity": "string",
        "website": "string",
        "security_contact": "string",
        "details": "string"
      },
      "unbonding_height": "string",
      "unbonding_time": "2019-08-24T14:15:22Z",
      "commission": {
        "commission_rates": {
          "rate": "string",
          "max_rate": "string",
          "max_change_rate": "string"
        },
        "update_time": "2019-08-24T14:15:22Z"
      },
      "min_self_delegation": "string",
      "unbonding_on_hold_ref_count": "string",
      "unbonding_ids": [
        "string"
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryDelegatorValidatorsResponse is response type for the Query/DelegatorValidators RPC method.

Properties

NameTypeRequiredRestrictionsDescription
validators[object]falsenonevalidators defines the validators' info of a delegator.
» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
» descriptionobjectfalsenonedescription defines the description terms for the validator.
»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»» websitestringfalsenonewebsite defines an optional website link.
»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»» detailsstringfalsenonedetails define other optional details.
» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
» commissionobjectfalsenonecommission defines the commission parameters.
»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
» unbonding_on_hold_ref_countstring(int64)falsenonenone
» unbonding_ids[string]falsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

cosmos.staking.v1beta1.QueryHistoricalInfoResponse

{
  "hist": {
    "header": {
      "version": {
        "block": "string",
        "app": "string"
      },
      "chain_id": "string",
      "height": "string",
      "time": "2019-08-24T14:15:22Z",
      "last_block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "last_commit_hash": "string",
      "data_hash": "string",
      "validators_hash": "string",
      "next_validators_hash": "string",
      "consensus_hash": "string",
      "app_hash": "string",
      "last_results_hash": "string",
      "evidence_hash": "string",
      "proposer_address": "string"
    },
    "valset": [
      {
        "operator_address": "string",
        "consensus_pubkey": {
          "type_url": "string",
          "value": "string"
        },
        "jailed": true,
        "status": "BOND_STATUS_UNSPECIFIED",
        "tokens": "string",
        "delegator_shares": "string",
        "description": {
          "moniker": "string",
          "identity": "string",
          "website": "string",
          "security_contact": "string",
          "details": "string"
        },
        "unbonding_height": "string",
        "unbonding_time": "2019-08-24T14:15:22Z",
        "commission": {
          "commission_rates": {},
          "update_time": "2019-08-24T14:15:22Z"
        },
        "min_self_delegation": "string",
        "unbonding_on_hold_ref_count": "string",
        "unbonding_ids": [
          "string"
        ]
      }
    ]
  }
}
 

QueryHistoricalInfoResponse is response type for the Query/HistoricalInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
histobjectfalsenonehist defines the historical info at the given height.
» headerobjectfalsenoneHeader defines the structure of a block header.
»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» chain_idstringfalsenonenone
»» heightstring(int64)falsenonenone
»» timestring(date-time)falsenonenone
»» last_block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» last_commit_hashstring(byte)falsenonenone
»» data_hashstring(byte)falsenonenone
»» validators_hashstring(byte)falsenonenone
»» next_validators_hashstring(byte)falsenonenone
»» consensus_hashstring(byte)falsenonenone
»» app_hashstring(byte)falsenonenone
»» last_results_hashstring(byte)falsenonenone
»» evidence_hashstring(byte)falsenonenone
»» proposer_addressstring(byte)falsenonenone
» valset[object]falsenonenone
»» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
»» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
»» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
»» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
»» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
»» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
»» descriptionobjectfalsenonedescription defines the description terms for the validator.
»»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»»» websitestringfalsenonewebsite defines an optional website link.
»»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»»» detailsstringfalsenonedetails define other optional details.
»» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
»» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
»» commissionobjectfalsenonecommission defines the commission parameters.
»»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
»» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»» unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

cosmos.staking.v1beta1.QueryParamsResponse

{
  "params": {
    "unbonding_time": "string",
    "max_validators": 0,
    "max_entries": 0,
    "historical_entries": 0,
    "bond_denom": "string",
    "min_commission_rate": "string"
  }
}
 

QueryParamsResponse is response type for the Query/Params RPC method.

Properties

NameTypeRequiredRestrictionsDescription
paramsobjectfalsenoneparams holds all the parameters of this module.
» unbonding_timestringfalsenoneunbonding_time is the time duration of unbonding.
» max_validatorsinteger(int64)falsenonemax_validators is the maximum number of validators.
» max_entriesinteger(int64)falsenonemax_entries is the max entries for either unbonding delegation or redelegation (per pair/trio).
» historical_entriesinteger(int64)falsenonehistorical_entries is the number of historical entries to persist.
» bond_denomstringfalsenonebond_denom defines the bondable coin denomination.
» min_commission_ratestringfalsenonenone

cosmos.staking.v1beta1.QueryPoolResponse

{
  "pool": {
    "not_bonded_tokens": "string",
    "bonded_tokens": "string"
  }
}
 

QueryPoolResponse is response type for the Query/Pool RPC method.

Properties

NameTypeRequiredRestrictionsDescription
poolobjectfalsenonepool defines the pool info.
» not_bonded_tokensstringfalsenonenone
» bonded_tokensstringfalsenonenone

cosmos.staking.v1beta1.QueryRedelegationsResponse

{
  "redelegation_responses": [
    {
      "redelegation": {
        "delegator_address": "string",
        "validator_src_address": "string",
        "validator_dst_address": "string",
        "entries": [
          {
            "creation_height": null,
            "completion_time": null,
            "initial_balance": null,
            "shares_dst": null,
            "unbonding_id": null,
            "unbonding_on_hold_ref_count": null
          }
        ]
      },
      "entries": [
        {
          "redelegation_entry": {
            "creation_height": null,
            "completion_time": null,
            "initial_balance": null,
            "shares_dst": null,
            "unbonding_id": null,
            "unbonding_on_hold_ref_count": null
          },
          "balance": "string"
        }
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryRedelegationsResponse is response type for the Query/Redelegations RPC method.

Properties

NameTypeRequiredRestrictionsDescription
redelegation_responses[object]falsenonenone
» redelegationobjectfalsenoneRedelegation contains the list of a particular delegator's redelegating bondsfrom a particular source validator to a particular destination validator.
»» delegator_addressstringfalsenonedelegator_address is the bech32-encoded address of the delegator.
»» validator_src_addressstringfalsenonevalidator_src_address is the validator redelegation source operator address.
»» validator_dst_addressstringfalsenonevalidator_dst_address is the validator redelegation destination operator address.
»» entries[object]falsenoneentries are the redelegation entries.
»»» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
»»» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
»»» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
»»» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
»»» unbonding_idstring(uint64)falsenonenone
»»» unbonding_on_hold_ref_countstring(int64)falsenonenone
» entries[object]falsenonenone
»» redelegation_entryobjectfalsenoneRedelegationEntry defines a redelegation object with relevant metadata.
»»» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
»»» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
»»» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
»»» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
»»» unbonding_idstring(uint64)falsenonenone
»»» unbonding_on_hold_ref_countstring(int64)falsenonenone
»» balancestringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.staking.v1beta1.QueryUnbondingDelegationResponse

{
  "unbond": {
    "delegator_address": "string",
    "validator_address": "string",
    "entries": [
      {
        "creation_height": "string",
        "completion_time": "2019-08-24T14:15:22Z",
        "initial_balance": "string",
        "balance": "string",
        "unbonding_id": "string",
        "unbonding_on_hold_ref_count": "string"
      }
    ]
  }
}
 

QueryDelegationResponse is response type for the Query/UnbondingDelegation RPC method.

Properties

NameTypeRequiredRestrictionsDescription
unbondobjectfalsenoneUnbondingDelegation stores all of a single delegator's unbonding bondsfor a single validator in an time-ordered list.
» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
» entries[object]falsenoneentries are the unbonding delegation entries.
»» creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
»» completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
»» initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
»» balancestringfalsenonebalance defines the tokens to receive at completion.
»» unbonding_idstring(uint64)falsenonenone
»» unbonding_on_hold_ref_countstring(int64)falsenonenone

cosmos.staking.v1beta1.QueryValidatorDelegationsResponse

{
  "delegation_responses": [
    {
      "delegation": {
        "delegator_address": "string",
        "validator_address": "string",
        "shares": "string"
      },
      "balance": {
        "denom": "string",
        "amount": "string"
      }
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryValidatorDelegationsResponse is response type for the Query/ValidatorDelegations RPC method

Properties

NameTypeRequiredRestrictionsDescription
delegation_responses[object]falsenonenone
» delegationobjectfalsenoneDelegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator.
»» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
»» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
»» sharesstringfalsenoneshares define the delegation shares received.
» balanceobjectfalsenoneCoin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto.
»» denomstringfalsenonenone
»» amountstringfalsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.staking.v1beta1.QueryValidatorResponse

{
  "validator": {
    "operator_address": "string",
    "consensus_pubkey": {
      "type_url": "string",
      "value": "string"
    },
    "jailed": true,
    "status": "BOND_STATUS_UNSPECIFIED",
    "tokens": "string",
    "delegator_shares": "string",
    "description": {
      "moniker": "string",
      "identity": "string",
      "website": "string",
      "security_contact": "string",
      "details": "string"
    },
    "unbonding_height": "string",
    "unbonding_time": "2019-08-24T14:15:22Z",
    "commission": {
      "commission_rates": {
        "rate": "string",
        "max_rate": "string",
        "max_change_rate": "string"
      },
      "update_time": "2019-08-24T14:15:22Z"
    },
    "min_self_delegation": "string",
    "unbonding_on_hold_ref_count": "string",
    "unbonding_ids": [
      "string"
    ]
  }
}
 

QueryValidatorResponse is response type for the Query/Validator RPC method

Properties

NameTypeRequiredRestrictionsDescription
validatorobjectfalsenoneValidator defines a validator, together with the total amount of theValidator's bond shares and their exchange rate to coins. Slashing results ina decrease in the exchange rate, allowing correct calculation of futureundelegations without iterating over delegators. When coins are delegated tothis validator, the validator is credited with a delegation whose number ofbond shares is based on the amount of coins delegated divided by the currentexchange rate. Voting power can be calculated as total bonded sharesmultiplied by exchange rate.
» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
» descriptionobjectfalsenonedescription defines the description terms for the validator.
»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»» websitestringfalsenonewebsite defines an optional website link.
»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»» detailsstringfalsenonedetails define other optional details.
» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
» commissionobjectfalsenonecommission defines the commission parameters.
»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
» unbonding_on_hold_ref_countstring(int64)falsenonenone
» unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsResponse

{
  "unbonding_responses": [
    {
      "delegator_address": "string",
      "validator_address": "string",
      "entries": [
        {
          "creation_height": "string",
          "completion_time": "2019-08-24T14:15:22Z",
          "initial_balance": "string",
          "balance": "string",
          "unbonding_id": "string",
          "unbonding_on_hold_ref_count": "string"
        }
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryValidatorUnbondingDelegationsResponse is response type for the Query/ValidatorUnbondingDelegations RPC method.

Properties

NameTypeRequiredRestrictionsDescription
unbonding_responses[object]falsenonenone
» delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
» validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
» entries[object]falsenoneentries are the unbonding delegation entries.
»» creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
»» completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
»» initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
»» balancestringfalsenonebalance defines the tokens to receive at completion.
»» unbonding_idstring(uint64)falsenonenone
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.staking.v1beta1.QueryValidatorsResponse

{
  "validators": [
    {
      "operator_address": "string",
      "consensus_pubkey": {
        "type_url": "string",
        "value": "string"
      },
      "jailed": true,
      "status": "BOND_STATUS_UNSPECIFIED",
      "tokens": "string",
      "delegator_shares": "string",
      "description": {
        "moniker": "string",
        "identity": "string",
        "website": "string",
        "security_contact": "string",
        "details": "string"
      },
      "unbonding_height": "string",
      "unbonding_time": "2019-08-24T14:15:22Z",
      "commission": {
        "commission_rates": {
          "rate": "string",
          "max_rate": "string",
          "max_change_rate": "string"
        },
        "update_time": "2019-08-24T14:15:22Z"
      },
      "min_self_delegation": "string",
      "unbonding_on_hold_ref_count": "string",
      "unbonding_ids": [
        "string"
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

QueryValidatorsResponse is response type for the Query/Validators RPC method

Properties

NameTypeRequiredRestrictionsDescription
validators[object]falsenonevalidators contains all the queried validators.
» operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
» consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
» statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
» tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
» delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
» descriptionobjectfalsenonedescription defines the description terms for the validator.
»» monikerstringfalsenonemoniker defines a human-readable name for the validator.
»» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
»» websitestringfalsenonewebsite defines an optional website link.
»» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
»» detailsstringfalsenonedetails define other optional details.
» unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
» unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
» commissionobjectfalsenonecommission defines the commission parameters.
»» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
»» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
» min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
» unbonding_on_hold_ref_countstring(int64)falsenonenone
» unbonding_ids[string]falsenonenone
paginationobjectfalsenonepagination defines the pagination in the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

cosmos.staking.v1beta1.Redelegation

{
  "delegator_address": "string",
  "validator_src_address": "string",
  "validator_dst_address": "string",
  "entries": [
    {
      "creation_height": "string",
      "completion_time": "2019-08-24T14:15:22Z",
      "initial_balance": "string",
      "shares_dst": "string",
      "unbonding_id": "string",
      "unbonding_on_hold_ref_count": "string"
    }
  ]
}
 

Redelegation contains the list of a particular delegator's redelegating bonds from a particular source validator to a particular destination validator.

Properties

NameTypeRequiredRestrictionsDescription
delegator_addressstringfalsenonedelegator_address is the bech32-encoded address of the delegator.
validator_src_addressstringfalsenonevalidator_src_address is the validator redelegation source operator address.
validator_dst_addressstringfalsenonevalidator_dst_address is the validator redelegation destination operator address.
entries[object]falsenoneentries are the redelegation entries.
» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
» unbonding_idstring(uint64)falsenonenone
» unbonding_on_hold_ref_countstring(int64)falsenonenone

cosmos.staking.v1beta1.RedelegationEntry

{
  "creation_height": "string",
  "completion_time": "2019-08-24T14:15:22Z",
  "initial_balance": "string",
  "shares_dst": "string",
  "unbonding_id": "string",
  "unbonding_on_hold_ref_count": "string"
}
 

RedelegationEntry defines a redelegation object with relevant metadata.

Properties

NameTypeRequiredRestrictionsDescription
creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
unbonding_idstring(uint64)falsenonenone
unbonding_on_hold_ref_countstring(int64)falsenonenone

cosmos.staking.v1beta1.RedelegationEntryResponse

{
  "redelegation_entry": {
    "creation_height": "string",
    "completion_time": "2019-08-24T14:15:22Z",
    "initial_balance": "string",
    "shares_dst": "string",
    "unbonding_id": "string",
    "unbonding_on_hold_ref_count": "string"
  },
  "balance": "string"
}
 

RedelegationEntryResponse is equivalent to a RedelegationEntry except that it contains a balance in addition to shares which is more suitable for client responses.

Properties

NameTypeRequiredRestrictionsDescription
redelegation_entryobjectfalsenoneRedelegationEntry defines a redelegation object with relevant metadata.
» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
» unbonding_idstring(uint64)falsenonenone
» unbonding_on_hold_ref_countstring(int64)falsenonenone
balancestringfalsenonenone

cosmos.staking.v1beta1.RedelegationResponse

{
  "redelegation": {
    "delegator_address": "string",
    "validator_src_address": "string",
    "validator_dst_address": "string",
    "entries": [
      {
        "creation_height": "string",
        "completion_time": "2019-08-24T14:15:22Z",
        "initial_balance": "string",
        "shares_dst": "string",
        "unbonding_id": "string",
        "unbonding_on_hold_ref_count": "string"
      }
    ]
  },
  "entries": [
    {
      "redelegation_entry": {
        "creation_height": "string",
        "completion_time": "2019-08-24T14:15:22Z",
        "initial_balance": "string",
        "shares_dst": "string",
        "unbonding_id": "string",
        "unbonding_on_hold_ref_count": "string"
      },
      "balance": "string"
    }
  ]
}
 

RedelegationResponse is equivalent to a Redelegation except that its entries contain a balance in addition to shares which is more suitable for client responses.

Properties

NameTypeRequiredRestrictionsDescription
redelegationobjectfalsenoneRedelegation contains the list of a particular delegator's redelegating bondsfrom a particular source validator to a particular destination validator.
» delegator_addressstringfalsenonedelegator_address is the bech32-encoded address of the delegator.
» validator_src_addressstringfalsenonevalidator_src_address is the validator redelegation source operator address.
» validator_dst_addressstringfalsenonevalidator_dst_address is the validator redelegation destination operator address.
» entries[object]falsenoneentries are the redelegation entries.
»» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
»» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
»» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
»» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
»» unbonding_idstring(uint64)falsenonenone
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
entries[object]falsenonenone
» redelegation_entryobjectfalsenoneRedelegationEntry defines a redelegation object with relevant metadata.
»» creation_heightstring(int64)falsenonecreation_height defines the height which the redelegation took place.
»» completion_timestring(date-time)falsenonecompletion_time defines the unix time for redelegation completion.
»» initial_balancestringfalsenoneinitial_balance defines the initial balance when redelegation started.
»» shares_dststringfalsenoneshares_dst is the amount of destination-validator shares created by redelegation.
»» unbonding_idstring(uint64)falsenonenone
»» unbonding_on_hold_ref_countstring(int64)falsenonenone
» balancestringfalsenonenone

cosmos.staking.v1beta1.UnbondingDelegation

{
  "delegator_address": "string",
  "validator_address": "string",
  "entries": [
    {
      "creation_height": "string",
      "completion_time": "2019-08-24T14:15:22Z",
      "initial_balance": "string",
      "balance": "string",
      "unbonding_id": "string",
      "unbonding_on_hold_ref_count": "string"
    }
  ]
}
 

UnbondingDelegation stores all of a single delegator's unbonding bonds for a single validator in an time-ordered list.

Properties

NameTypeRequiredRestrictionsDescription
delegator_addressstringfalsenonedelegator_address is the encoded address of the delegator.
validator_addressstringfalsenonevalidator_address is the encoded address of the validator.
entries[object]falsenoneentries are the unbonding delegation entries.
» creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
» completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
» initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
» balancestringfalsenonebalance defines the tokens to receive at completion.
» unbonding_idstring(uint64)falsenonenone
» unbonding_on_hold_ref_countstring(int64)falsenonenone

cosmos.staking.v1beta1.UnbondingDelegationEntry

{
  "creation_height": "string",
  "completion_time": "2019-08-24T14:15:22Z",
  "initial_balance": "string",
  "balance": "string",
  "unbonding_id": "string",
  "unbonding_on_hold_ref_count": "string"
}
 

UnbondingDelegationEntry defines an unbonding object with relevant metadata.

Properties

NameTypeRequiredRestrictionsDescription
creation_heightstring(int64)falsenonecreation_height is the height which the unbonding took place.
completion_timestring(date-time)falsenonecompletion_time is the unix time for unbonding completion.
initial_balancestringfalsenoneinitial_balance defines the tokens initially scheduled to receive at completion.
balancestringfalsenonebalance defines the tokens to receive at completion.
unbonding_idstring(uint64)falsenonenone
unbonding_on_hold_ref_countstring(int64)falsenonenone

cosmos.staking.v1beta1.Validator

{
  "operator_address": "string",
  "consensus_pubkey": {
    "type_url": "string",
    "value": "string"
  },
  "jailed": true,
  "status": "BOND_STATUS_UNSPECIFIED",
  "tokens": "string",
  "delegator_shares": "string",
  "description": {
    "moniker": "string",
    "identity": "string",
    "website": "string",
    "security_contact": "string",
    "details": "string"
  },
  "unbonding_height": "string",
  "unbonding_time": "2019-08-24T14:15:22Z",
  "commission": {
    "commission_rates": {
      "rate": "string",
      "max_rate": "string",
      "max_change_rate": "string"
    },
    "update_time": "2019-08-24T14:15:22Z"
  },
  "min_self_delegation": "string",
  "unbonding_on_hold_ref_count": "string",
  "unbonding_ids": [
    "string"
  ]
}
 

Validator defines a validator, together with the total amount of the Validator's bond shares and their exchange rate to coins. Slashing results in a decrease in the exchange rate, allowing correct calculation of future undelegations without iterating over delegators. When coins are delegated to this validator, the validator is credited with a delegation whose number of bond shares is based on the amount of coins delegated divided by the current exchange rate. Voting power can be calculated as total bonded shares multiplied by exchange rate.

Properties

NameTypeRequiredRestrictionsDescription
operator_addressstringfalsenoneoperator_address defines the address of the validator's operator; bech encoded in JSON.
consensus_pubkeyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
jailedbooleanfalsenonejailed defined whether the validator has been jailed from bonded status or not.
statusstringfalsenonestatus is the validator status (bonded/unbonding/unbonded).
tokensstringfalsenonetokens define the delegated tokens (incl. self-delegation).
delegator_sharesstringfalsenonedelegator_shares defines total shares issued to a validator's delegators.
descriptionobjectfalsenonedescription defines the description terms for the validator.
» monikerstringfalsenonemoniker defines a human-readable name for the validator.
» identitystringfalsenoneidentity defines an optional identity signature (ex. UPort or Keybase).
» websitestringfalsenonewebsite defines an optional website link.
» security_contactstringfalsenonesecurity_contact defines an optional email for security contact.
» detailsstringfalsenonedetails define other optional details.
unbonding_heightstring(int64)falsenoneunbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
unbonding_timestring(date-time)falsenoneunbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
commissionobjectfalsenonecommission defines the commission parameters.
» commission_ratesobjectfalsenonecommission_rates defines the initial commission rates to be used for creating a validator.
»» ratestringfalsenonerate is the commission rate charged to delegators, as a fraction.
»» max_ratestringfalsenonemax_rate defines the maximum commission rate which validator can ever charge, as a fraction.
»» max_change_ratestringfalsenonemax_change_rate defines the maximum daily increase of the validator commission, as a fraction.
» update_timestring(date-time)falsenoneupdate_time is the last time the commission rate was changed.
min_self_delegationstringfalsenonemin_self_delegation is the validator's self declared minimum self delegation.Since: cosmos-sdk 0.46
unbonding_on_hold_ref_countstring(int64)falsenonenone
unbonding_ids[string]falsenonenone

Enumerated Values

PropertyValue
statusBOND_STATUS_UNSPECIFIED
statusBOND_STATUS_UNBONDED
statusBOND_STATUS_UNBONDING
statusBOND_STATUS_BONDED

tendermint.types.BlockID

{
  "hash": "string",
  "part_set_header": {
    "total": 0,
    "hash": "string"
  }
}
 

BlockID

Properties

NameTypeRequiredRestrictionsDescription
hashstring(byte)falsenonenone
part_set_headerobjectfalsenonenone
» totalinteger(int64)falsenonenone
» hashstring(byte)falsenonenone

tendermint.types.Header

{
  "version": {
    "block": "string",
    "app": "string"
  },
  "chain_id": "string",
  "height": "string",
  "time": "2019-08-24T14:15:22Z",
  "last_block_id": {
    "hash": "string",
    "part_set_header": {
      "total": 0,
      "hash": "string"
    }
  },
  "last_commit_hash": "string",
  "data_hash": "string",
  "validators_hash": "string",
  "next_validators_hash": "string",
  "consensus_hash": "string",
  "app_hash": "string",
  "last_results_hash": "string",
  "evidence_hash": "string",
  "proposer_address": "string"
}
 

Header defines the structure of a block header.

Properties

NameTypeRequiredRestrictionsDescription
versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
» blockstring(uint64)falsenonenone
» appstring(uint64)falsenonenone
chain_idstringfalsenonenone
heightstring(int64)falsenonenone
timestring(date-time)falsenonenone
last_block_idobjectfalsenonenone
» hashstring(byte)falsenonenone
» part_set_headerobjectfalsenonenone
»» totalinteger(int64)falsenonenone
»» hashstring(byte)falsenonenone
last_commit_hashstring(byte)falsenonenone
data_hashstring(byte)falsenonenone
validators_hashstring(byte)falsenonenone
next_validators_hashstring(byte)falsenonenone
consensus_hashstring(byte)falsenonenone
app_hashstring(byte)falsenonenone
last_results_hashstring(byte)falsenonenone
evidence_hashstring(byte)falsenonenone
proposer_addressstring(byte)falsenonenone

tendermint.types.PartSetHeader

{
  "total": 0,
  "hash": "string"
}
 

PartsetHeader

Properties

NameTypeRequiredRestrictionsDescription
totalinteger(int64)falsenonenone
hashstring(byte)falsenonenone

tendermint.version.Consensus

{
  "block": "string",
  "app": "string"
}
 

Consensus captures the consensus rules for processing a block in the blockchain, including all blockchain data structures and the rules of the application's state transition machine.

Properties

NameTypeRequiredRestrictionsDescription
blockstring(uint64)falsenonenone
appstring(uint64)falsenonenone

cosmos.base.abci.v1beta1.ABCIMessageLog

{
  "msg_index": 0,
  "log": "string",
  "events": [
    {
      "type": "string",
      "attributes": [
        {
          "key": "string",
          "value": "string"
        }
      ]
    }
  ]
}
 

ABCIMessageLog defines a structure containing an indexed tx ABCI message log.

Properties

NameTypeRequiredRestrictionsDescription
msg_indexinteger(int64)falsenonenone
logstringfalsenonenone
events[object]falsenoneEvents contains a slice of Event objects that were emitted during someexecution.
» typestringfalsenonenone
» attributes[object]falsenonenone
»» keystringfalsenonenone
»» valuestringfalsenonenone

cosmos.base.abci.v1beta1.Attribute

{
  "key": "string",
  "value": "string"
}
 

Attribute defines an attribute wrapper where the key and value are strings instead of raw bytes.

Properties

NameTypeRequiredRestrictionsDescription
keystringfalsenonenone
valuestringfalsenonenone

cosmos.base.abci.v1beta1.GasInfo

{
  "gas_wanted": "string",
  "gas_used": "string"
}
 

GasInfo defines tx execution gas context.

Properties

NameTypeRequiredRestrictionsDescription
gas_wantedstring(uint64)falsenoneGasWanted is the maximum units of work we allow this tx to perform.
gas_usedstring(uint64)falsenoneGasUsed is the amount of gas actually consumed.

cosmos.base.abci.v1beta1.Result

{
  "data": "string",
  "log": "string",
  "events": [
    {
      "type": "string",
      "attributes": [
        {
          "key": "string",
          "value": "string",
          "index": true
        }
      ]
    }
  ],
  "msg_responses": [
    {
      "type_url": "string",
      "value": "string"
    }
  ]
}
 

Result is the union of ResponseFormat and ResponseCheckTx.

Properties

NameTypeRequiredRestrictionsDescription
datastring(byte)falsenoneData is any data returned from message or handler execution. It MUST belength prefixed in order to separate data from multiple message executions.Deprecated. This field is still populated, but prefer msg_response insteadbecause it also contains the Msg response typeURL.
logstringfalsenoneLog contains the log information from message or handler execution.
events[object]falsenoneEvents contains a slice of Event objects that were emitted during messageor handler execution.
» typestringfalsenonenone
» attributes[object]falsenonenone
»» keystringfalsenonenone
»» valuestringfalsenonenone
»» indexbooleanfalsenonenone
msg_responses[object]falsenonemsg_responses contains the Msg handler responses type packed in Anys.Since: cosmos-sdk 0.46
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.base.abci.v1beta1.StringEvent

{
  "type": "string",
  "attributes": [
    {
      "key": "string",
      "value": "string"
    }
  ]
}
 

StringEvent defines en Event object wrapper where all the attributes contain key/value pairs that are strings instead of raw bytes.

Properties

NameTypeRequiredRestrictionsDescription
typestringfalsenonenone
attributes[object]falsenonenone
» keystringfalsenonenone
» valuestringfalsenonenone

cosmos.base.abci.v1beta1.TxResponse

{
  "height": "string",
  "txhash": "string",
  "codespace": "string",
  "code": 0,
  "data": "string",
  "raw_log": "string",
  "logs": [
    {
      "msg_index": 0,
      "log": "string",
      "events": [
        {
          "type": "string",
          "attributes": [
            {}
          ]
        }
      ]
    }
  ],
  "info": "string",
  "gas_wanted": "string",
  "gas_used": "string",
  "tx": {
    "type_url": "string",
    "value": "string"
  },
  "timestamp": "string",
  "events": [
    {
      "type": "string",
      "attributes": [
        {
          "key": "string",
          "value": "string",
          "index": true
        }
      ]
    }
  ]
}
 

TxResponse defines a structure containing relevant tx data and metadata. The tags are stringified and the log is JSON decoded.

Properties

NameTypeRequiredRestrictionsDescription
heightstring(int64)falsenonenone
txhashstringfalsenoneThe transaction hash.
codespacestringfalsenonenone
codeinteger(int64)falsenoneResponse code.
datastringfalsenoneResult bytes, if any.
raw_logstringfalsenoneThe output of the application's logger (raw string). May benon-deterministic.
logs[object]falsenoneThe output of the application's logger (typed). May be non-deterministic.
» msg_indexinteger(int64)falsenonenone
» logstringfalsenonenone
» events[object]falsenoneEvents contains a slice of Event objects that were emitted during someexecution.
»» typestringfalsenonenone
»» attributes[object]falsenonenone
»»» keystringfalsenonenone
»»» valuestringfalsenonenone
infostringfalsenoneAdditional information. May be non-deterministic.
gas_wantedstring(int64)falsenoneAmount of gas requested for transaction.
gas_usedstring(int64)falsenoneAmount of gas consumed by transaction.
txobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
timestampstringfalsenoneTime of the previous block. For heights > 1, it's the weighted median ofthe timestamps of the valid votes in the block.LastCommit. For height == 1,it's genesis time.
events[object]falsenoneEvents defines all the events emitted by processing a transaction. Note,these events include those emitted by processing all the messages and thoseemitted from the ante. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
» typestringfalsenonenone
» attributes[object]falsenonenone
»» keystringfalsenonenone
»» valuestringfalsenonenone
»» indexbooleanfalsenonenone

cosmos.crypto.multisig.v1beta1.CompactBitArray

{
  "extra_bits_stored": 0,
  "elems": "string"
}
 

CompactBitArray is an implementation of a space efficient bit array. This is used to ensure that the encoded data takes up a minimal amount of space after proto encoding. This is not thread safe, and is not intended for concurrent usage.

Properties

NameTypeRequiredRestrictionsDescription
extra_bits_storedinteger(int64)falsenonenone
elemsstring(byte)falsenonenone

cosmos.tx.signing.v1beta1.SignMode

"SIGN_MODE_UNSPECIFIED"
 

SignMode represents a signing mode with its own security guarantees.

This enum should be considered a registry of all known sign modes in the Cosmos ecosystem. Apps are not expected to support all known sign modes. Apps that would like to support custom sign modes are encouraged to open a small PR against this file to add a new case to this SignMode enum describing their sign mode so that different apps have a consistent version of this enum.

  • SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be rejected.
  • SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is verified with raw bytes from Tx.
  • SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify some human-readable textual representation on top of the binary representation from SIGN_MODE_DIRECT. It is currently experimental, and should be used for testing purposes only, until Textual is fully released. Please follow the tracking issue https://github.com/cosmos/cosmos-sdk/issues/11970 (opens in a new tab).
  • SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which uses SignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does not require signers signing over other signers' signer_info. It also allows for adding Tips in transactions.

Since: cosmos-sdk 0.46

  • SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses Amino JSON and will be removed in the future.
  • SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the Cosmos SDK. Ref: https://eips.ethereum.org/EIPS/eip-191 (opens in a new tab)

Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant, but is not implemented on the SDK by default. To enable EIP-191, you need to pass a custom TxConfig that has an implementation of SignModeHandler for EIP-191. The SDK may decide to fully support EIP-191 in the future.

Since: cosmos-sdk 0.45.2

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneSignMode represents a signing mode with its own security guarantees.This enum should be considered a registry of all known sign modesin the Cosmos ecosystem. Apps are not expected to support all knownsign modes. Apps that would like to support custom sign modes areencouraged to open a small PR against this file to add a new caseto this SignMode enum describing their sign mode so that differentapps have a consistent version of this enum. - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will berejected. - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and isverified with raw bytes from Tx. - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify somehuman-readable textual representation on top of the binary representationfrom SIGN_MODE_DIRECT. It is currently experimental, and should be usedfor testing purposes only, until Textual is fully released. Please followthe tracking issue https://github.com/cosmos/cosmos-sdk/issues/11970. (opens in a new tab) - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which usesSignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does notrequire signers signing over other signers' signer_info. It also allowsfor adding Tips in transactions.Since: cosmos-sdk 0.46 - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which usesAmino JSON and will be removed in the future. - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the CosmosSDK. Ref: https://eips.ethereum.org/EIPS/eip-191 (opens in a new tab)Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant,but is not implemented on the SDK by default. To enable EIP-191, you needto pass a custom TxConfig that has an implementation ofSignModeHandler for EIP-191. The SDK may decide to fully supportEIP-191 in the future.Since: cosmos-sdk 0.45.2

Enumerated Values

PropertyValue
anonymousSIGN_MODE_UNSPECIFIED
anonymousSIGN_MODE_DIRECT
anonymousSIGN_MODE_TEXTUAL
anonymousSIGN_MODE_DIRECT_AUX
anonymousSIGN_MODE_LEGACY_AMINO_JSON
anonymousSIGN_MODE_EIP_191

cosmos.tx.v1beta1.AuthInfo

{
  "signer_infos": [
    {
      "public_key": {
        "type_url": "string",
        "value": "string"
      },
      "mode_info": {
        "single": {
          "mode": "["
        },
        "multi": {
          "bitarray": {},
          "mode_infos": [
            null
          ]
        }
      },
      "sequence": "string"
    }
  ],
  "fee": {
    "amount": [
      {
        "denom": "string",
        "amount": "string"
      }
    ],
    "gas_limit": "string",
    "payer": "string",
    "granter": "string"
  },
  "tip": {
    "amount": [
      {
        "denom": "string",
        "amount": "string"
      }
    ],
    "tipper": "string"
  }
}
 

AuthInfo describes the fee and signer modes that are used to sign a transaction.

Properties

NameTypeRequiredRestrictionsDescription
signer_infos[cosmos.tx.v1beta1.SignerInfo]falsenonesigner_infos defines the signing modes for the required signers. The numberand order of elements must match the required signers from TxBody'smessages. The first element is the primary signer and the one which paysthe fee.
feeobjectfalsenoneFee is the fee and gas limit for the transaction. The first signer is theprimary signer and the one which pays the fee. The fee can be calculatedbased on the cost of evaluating the body and doing signature verificationof the signers. This can be estimated via simulation.
» amount[object]falsenonenone
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» gas_limitstring(uint64)falsenonenone
» payerstringfalsenoneif unset, the first signer is responsible for paying the fees. If set, the specified account must pay the fees.the payer must be a tx signer (and thus have signed this field in AuthInfo).setting this field does not change the ordering of required signers for the transaction.
» granterstringfalsenonenone
tipobjectfalsenoneTip is the optional tip used for transactions fees paid in another denom.This field is ignored if the chain didn't enable tips, i.e. didn't add theTipDecorator in its posthandler.Since: cosmos-sdk 0.46
» amount[object]falsenonenone
»» denomstringfalsenonenone
»» amountstringfalsenonenone
» tipperstringfalsenonenone

cosmos.tx.v1beta1.BroadcastMode

"BROADCAST_MODE_UNSPECIFIED"
 

BroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC method.

  • BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering
  • BROADCAST_MODE_BLOCK: DEPRECATED: use BROADCAST_MODE_SYNC instead, BROADCAST_MODE_BLOCK is not supported by the SDK from v0.47.x onwards.
  • BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for a CheckTx execution response only.
  • BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns immediately.

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneBroadcastMode specifies the broadcast mode for the TxService.Broadcast RPCmethod. - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering - BROADCAST_MODE_BLOCK: DEPRECATED: use BROADCAST_MODE_SYNC instead,BROADCAST_MODE_BLOCK is not supported by the SDK from v0.47.x onwards. - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waitsfor a CheckTx execution response only. - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the clientreturns immediately.

Enumerated Values

PropertyValue
anonymousBROADCAST_MODE_UNSPECIFIED
anonymousBROADCAST_MODE_BLOCK
anonymousBROADCAST_MODE_SYNC
anonymousBROADCAST_MODE_ASYNC

cosmos.tx.v1beta1.BroadcastTxRequest

{
  "tx_bytes": "string",
  "mode": "BROADCAST_MODE_UNSPECIFIED"
}
 

BroadcastTxRequest is the request type for the Service.BroadcastTxRequest RPC method.

Properties

NameTypeRequiredRestrictionsDescription
tx_bytesstring(byte)falsenonetx_bytes is the raw transaction.
modestringfalsenoneBroadcastMode specifies the broadcast mode for the TxService.Broadcast RPCmethod. - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering - BROADCAST_MODE_BLOCK: DEPRECATED: use BROADCAST_MODE_SYNC instead,BROADCAST_MODE_BLOCK is not supported by the SDK from v0.47.x onwards. - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waitsfor a CheckTx execution response only. - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the clientreturns immediately.

Enumerated Values

PropertyValue
modeBROADCAST_MODE_UNSPECIFIED
modeBROADCAST_MODE_BLOCK
modeBROADCAST_MODE_SYNC
modeBROADCAST_MODE_ASYNC

cosmos.tx.v1beta1.BroadcastTxResponse

{
  "tx_response": {
    "height": "string",
    "txhash": "string",
    "codespace": "string",
    "code": 0,
    "data": "string",
    "raw_log": "string",
    "logs": [
      {
        "msg_index": 0,
        "log": "string",
        "events": [
          {
            "type": null,
            "attributes": null
          }
        ]
      }
    ],
    "info": "string",
    "gas_wanted": "string",
    "gas_used": "string",
    "tx": {
      "type_url": "string",
      "value": "string"
    },
    "timestamp": "string",
    "events": [
      {
        "type": "string",
        "attributes": [
          {
            "key": null,
            "value": null,
            "index": null
          }
        ]
      }
    ]
  }
}
 

BroadcastTxResponse is the response type for the Service.BroadcastTx method.

Properties

NameTypeRequiredRestrictionsDescription
tx_responseobjectfalsenoneTxResponse defines a structure containing relevant tx data and metadata. Thetags are stringified and the log is JSON decoded.
» heightstring(int64)falsenonenone
» txhashstringfalsenoneThe transaction hash.
» codespacestringfalsenonenone
» codeinteger(int64)falsenoneResponse code.
» datastringfalsenoneResult bytes, if any.
» raw_logstringfalsenoneThe output of the application's logger (raw string). May benon-deterministic.
» logs[object]falsenoneThe output of the application's logger (typed). May be non-deterministic.
»» msg_indexinteger(int64)falsenonenone
»» logstringfalsenonenone
»» events[object]falsenoneEvents contains a slice of Event objects that were emitted during someexecution.
»»» typestringfalsenonenone
»»» attributes[object]falsenonenone
»»»» keystringfalsenonenone
»»»» valuestringfalsenonenone
» infostringfalsenoneAdditional information. May be non-deterministic.
» gas_wantedstring(int64)falsenoneAmount of gas requested for transaction.
» gas_usedstring(int64)falsenoneAmount of gas consumed by transaction.
» txobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» timestampstringfalsenoneTime of the previous block. For heights > 1, it's the weighted median ofthe timestamps of the valid votes in the block.LastCommit. For height == 1,it's genesis time.
» events[object]falsenoneEvents defines all the events emitted by processing a transaction. Note,these events include those emitted by processing all the messages and thoseemitted from the ante. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
»» typestringfalsenonenone
»» attributes[object]falsenonenone
»»» keystringfalsenonenone
»»» valuestringfalsenonenone
»»» indexbooleanfalsenonenone

cosmos.tx.v1beta1.Fee

{
  "amount": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "gas_limit": "string",
  "payer": "string",
  "granter": "string"
}
 

Fee includes the amount of coins paid in fees and the maximum gas to be used by the transaction. The ratio yields an effective "gasprice", which must be above some miminum to be accepted into the mempool.

Properties

NameTypeRequiredRestrictionsDescription
amount[object]falsenonenone
» denomstringfalsenonenone
» amountstringfalsenonenone
gas_limitstring(uint64)falsenonenone
payerstringfalsenoneif unset, the first signer is responsible for paying the fees. If set, the specified account must pay the fees.the payer must be a tx signer (and thus have signed this field in AuthInfo).setting this field does not change the ordering of required signers for the transaction.
granterstringfalsenonenone

cosmos.tx.v1beta1.GetBlockWithTxsResponse

{
  "txs": [
    {
      "body": {
        "messages": [
          {
            "type_url": null,
            "value": null
          }
        ],
        "memo": "string",
        "timeout_height": "string",
        "extension_options": [
          {
            "type_url": null,
            "value": null
          }
        ],
        "non_critical_extension_options": [
          {
            "type_url": null,
            "value": null
          }
        ]
      },
      "auth_info": {
        "signer_infos": [
          {
            "public_key": null,
            "mode_info": null,
            "sequence": null
          }
        ],
        "fee": {
          "amount": [
            null
          ],
          "gas_limit": "string",
          "payer": "string",
          "granter": "string"
        },
        "tip": {
          "amount": [
            null
          ],
          "tipper": "string"
        }
      },
      "signatures": [
        "string"
      ]
    }
  ],
  "block_id": {
    "hash": "string",
    "part_set_header": {
      "total": 0,
      "hash": "string"
    }
  },
  "block": {
    "header": {
      "version": {
        "block": "string",
        "app": "string"
      },
      "chain_id": "string",
      "height": "string",
      "time": "2019-08-24T14:15:22Z",
      "last_block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "last_commit_hash": "string",
      "data_hash": "string",
      "validators_hash": "string",
      "next_validators_hash": "string",
      "consensus_hash": "string",
      "app_hash": "string",
      "last_results_hash": "string",
      "evidence_hash": "string",
      "proposer_address": "string"
    },
    "data": {
      "txs": [
        "string"
      ]
    },
    "evidence": {
      "evidence": [
        {
          "duplicate_vote_evidence": {},
          "light_client_attack_evidence": {}
        }
      ]
    },
    "last_commit": {
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "signatures": [
        {
          "block_id_flag": "[",
          "validator_address": "string",
          "timestamp": "2019-08-24T14:15:22Z",
          "signature": "string"
        }
      ]
    }
  },
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

GetBlockWithTxsResponse is the response type for the Service.GetBlockWithTxs method.

Since: cosmos-sdk 0.45.2

Properties

NameTypeRequiredRestrictionsDescription
txs[cosmos.tx.v1beta1.Tx]falsenonetxs are the transactions in the block.
block_idobjectfalsenonenone
» hashstring(byte)falsenonenone
» part_set_headerobjectfalsenonenone
»» totalinteger(int64)falsenonenone
»» hashstring(byte)falsenonenone
blockobjectfalsenonenone
» headerobjectfalsenoneHeader defines the structure of a block header.
»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» chain_idstringfalsenonenone
»» heightstring(int64)falsenonenone
»» timestring(date-time)falsenonenone
»» last_block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» last_commit_hashstring(byte)falsenonenone
»» data_hashstring(byte)falsenonenone
»» validators_hashstring(byte)falsenonenone
»» next_validators_hashstring(byte)falsenonenone
»» consensus_hashstring(byte)falsenonenone
»» app_hashstring(byte)falsenonenone
»» last_results_hashstring(byte)falsenonenone
»» evidence_hashstring(byte)falsenonenone
»» proposer_addressstring(byte)falsenonenone
» dataobjectfalsenonenone
»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
» evidenceobjectfalsenonenone
»» evidence[object]falsenonenone
»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» total_voting_powerstring(int64)falsenonenone
»»»» validator_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»» conflicting_blockobjectfalsenonenone
»»»»» signed_headerobjectfalsenonenone
»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»» appstring(uint64)falsenonenone
»»»»»»» chain_idstringfalsenonenone
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» timestring(date-time)falsenonenone
»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» roundinteger(int32)falsenonenone
»»»»»»» block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» signatures[object]falsenonenone
»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»» signaturestring(byte)falsenonenone
»»»»» validator_setobjectfalsenonenone
»»»»»» validators[object]falsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» proposerobjectfalsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» total_voting_powerstring(int64)falsenonenone
»»»» common_heightstring(int64)falsenonenone
»»»» byzantine_validators[object]falsenonenone
»»»»» addressstring(byte)falsenonenone
»»»»» pub_keyobjectfalsenonenone
»»»»»» ed25519string(byte)falsenonenone
»»»»»» secp256k1string(byte)falsenonenone
»»»»» voting_powerstring(int64)falsenonenone
»»»»» proposer_prioritystring(int64)falsenonenone
»»»» total_voting_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» signatures[object]falsenonenone
»»» block_id_flagstringfalsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» signaturestring(byte)falsenonenone
paginationobjectfalsenonepagination defines a pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

cosmos.tx.v1beta1.GetTxResponse

{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  },
  "tx_response": {
    "height": "string",
    "txhash": "string",
    "codespace": "string",
    "code": 0,
    "data": "string",
    "raw_log": "string",
    "logs": [
      {
        "msg_index": 0,
        "log": "string",
        "events": [
          {
            "type": null,
            "attributes": null
          }
        ]
      }
    ],
    "info": "string",
    "gas_wanted": "string",
    "gas_used": "string",
    "tx": {
      "type_url": "string",
      "value": "string"
    },
    "timestamp": "string",
    "events": [
      {
        "type": "string",
        "attributes": [
          {
            "key": null,
            "value": null,
            "index": null
          }
        ]
      }
    ]
  }
}
 

GetTxResponse is the response type for the Service.GetTx method.

Properties

NameTypeRequiredRestrictionsDescription
txcosmos.tx.v1beta1.Txfalsenonetx is the queried transaction.
tx_responseobjectfalsenoneTxResponse defines a structure containing relevant tx data and metadata. Thetags are stringified and the log is JSON decoded.
» heightstring(int64)falsenonenone
» txhashstringfalsenoneThe transaction hash.
» codespacestringfalsenonenone
» codeinteger(int64)falsenoneResponse code.
» datastringfalsenoneResult bytes, if any.
» raw_logstringfalsenoneThe output of the application's logger (raw string). May benon-deterministic.
» logs[object]falsenoneThe output of the application's logger (typed). May be non-deterministic.
»» msg_indexinteger(int64)falsenonenone
»» logstringfalsenonenone
»» events[object]falsenoneEvents contains a slice of Event objects that were emitted during someexecution.
»»» typestringfalsenonenone
»»» attributes[object]falsenonenone
»»»» keystringfalsenonenone
»»»» valuestringfalsenonenone
» infostringfalsenoneAdditional information. May be non-deterministic.
» gas_wantedstring(int64)falsenoneAmount of gas requested for transaction.
» gas_usedstring(int64)falsenoneAmount of gas consumed by transaction.
» txobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» timestampstringfalsenoneTime of the previous block. For heights > 1, it's the weighted median ofthe timestamps of the valid votes in the block.LastCommit. For height == 1,it's genesis time.
» events[object]falsenoneEvents defines all the events emitted by processing a transaction. Note,these events include those emitted by processing all the messages and thoseemitted from the ante. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
»» typestringfalsenonenone
»» attributes[object]falsenonenone
»»» keystringfalsenonenone
»»» valuestringfalsenonenone
»»» indexbooleanfalsenonenone

cosmos.tx.v1beta1.GetTxsEventResponse

{
  "txs": [
    {
      "body": {
        "messages": [
          {
            "type_url": null,
            "value": null
          }
        ],
        "memo": "string",
        "timeout_height": "string",
        "extension_options": [
          {
            "type_url": null,
            "value": null
          }
        ],
        "non_critical_extension_options": [
          {
            "type_url": null,
            "value": null
          }
        ]
      },
      "auth_info": {
        "signer_infos": [
          {
            "public_key": null,
            "mode_info": null,
            "sequence": null
          }
        ],
        "fee": {
          "amount": [
            null
          ],
          "gas_limit": "string",
          "payer": "string",
          "granter": "string"
        },
        "tip": {
          "amount": [
            null
          ],
          "tipper": "string"
        }
      },
      "signatures": [
        "string"
      ]
    }
  ],
  "tx_responses": [
    {
      "height": "string",
      "txhash": "string",
      "codespace": "string",
      "code": 0,
      "data": "string",
      "raw_log": "string",
      "logs": [
        {
          "msg_index": 0,
          "log": "string",
          "events": [
            {}
          ]
        }
      ],
      "info": "string",
      "gas_wanted": "string",
      "gas_used": "string",
      "tx": {
        "type_url": "string",
        "value": "string"
      },
      "timestamp": "string",
      "events": [
        {
          "type": "string",
          "attributes": [
            {}
          ]
        }
      ]
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  },
  "total": "string"
}
 

GetTxsEventResponse is the response type for the Service.TxsByEvents RPC method.

Properties

NameTypeRequiredRestrictionsDescription
txs[cosmos.tx.v1beta1.Tx]falsenonetxs is the list of queried transactions.
tx_responses[object]falsenonetx_responses is the list of queried TxResponses.
» heightstring(int64)falsenonenone
» txhashstringfalsenoneThe transaction hash.
» codespacestringfalsenonenone
» codeinteger(int64)falsenoneResponse code.
» datastringfalsenoneResult bytes, if any.
» raw_logstringfalsenoneThe output of the application's logger (raw string). May benon-deterministic.
» logs[object]falsenoneThe output of the application's logger (typed). May be non-deterministic.
»» msg_indexinteger(int64)falsenonenone
»» logstringfalsenonenone
»» events[object]falsenoneEvents contains a slice of Event objects that were emitted during someexecution.
»»» typestringfalsenonenone
»»» attributes[object]falsenonenone
»»»» keystringfalsenonenone
»»»» valuestringfalsenonenone
» infostringfalsenoneAdditional information. May be non-deterministic.
» gas_wantedstring(int64)falsenoneAmount of gas requested for transaction.
» gas_usedstring(int64)falsenoneAmount of gas consumed by transaction.
» txobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» timestampstringfalsenoneTime of the previous block. For heights > 1, it's the weighted median ofthe timestamps of the valid votes in the block.LastCommit. For height == 1,it's genesis time.
» events[object]falsenoneEvents defines all the events emitted by processing a transaction. Note,these events include those emitted by processing all the messages and thoseemitted from the ante. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
»» typestringfalsenonenone
»» attributes[object]falsenonenone
»»» keystringfalsenonenone
»»» valuestringfalsenonenone
»»» indexbooleanfalsenonenone
paginationobjectfalsenonepagination defines a pagination for the response.Deprecated post v0.46.x: use total instead.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone
totalstring(uint64)falsenonenone

cosmos.tx.v1beta1.ModeInfo

{
  "single": {
    "mode": "SIGN_MODE_UNSPECIFIED"
  },
  "multi": {
    "bitarray": {
      "extra_bits_stored": 0,
      "elems": "string"
    },
    "mode_infos": [
      {
        "single": {
          "mode": "["
        },
        "multi": {
          "bitarray": {},
          "mode_infos": [
            null
          ]
        }
      }
    ]
  }
}
 

ModeInfo describes the signing mode of a single or nested multisig signer.

Properties

NameTypeRequiredRestrictionsDescription
singleobjectfalsenonenone
» modestringfalsenoneSignMode represents a signing mode with its own security guarantees.This enum should be considered a registry of all known sign modesin the Cosmos ecosystem. Apps are not expected to support all knownsign modes. Apps that would like to support custom sign modes areencouraged to open a small PR against this file to add a new caseto this SignMode enum describing their sign mode so that differentapps have a consistent version of this enum. - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will berejected. - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and isverified with raw bytes from Tx. - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify somehuman-readable textual representation on top of the binary representationfrom SIGN_MODE_DIRECT. It is currently experimental, and should be usedfor testing purposes only, until Textual is fully released. Please followthe tracking issue https://github.com/cosmos/cosmos-sdk/issues/11970. (opens in a new tab) - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which usesSignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does notrequire signers signing over other signers' signer_info. It also allowsfor adding Tips in transactions.Since: cosmos-sdk 0.46 - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which usesAmino JSON and will be removed in the future. - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the CosmosSDK. Ref: https://eips.ethereum.org/EIPS/eip-191 (opens in a new tab)Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant,but is not implemented on the SDK by default. To enable EIP-191, you needto pass a custom TxConfig that has an implementation ofSignModeHandler for EIP-191. The SDK may decide to fully supportEIP-191 in the future.Since: cosmos-sdk 0.45.2
multicosmos.tx.v1beta1.ModeInfo.Multifalsenonenone

Enumerated Values

PropertyValue
modeSIGN_MODE_UNSPECIFIED
modeSIGN_MODE_DIRECT
modeSIGN_MODE_TEXTUAL
modeSIGN_MODE_DIRECT_AUX
modeSIGN_MODE_LEGACY_AMINO_JSON
modeSIGN_MODE_EIP_191

cosmos.tx.v1beta1.ModeInfo.Multi

{
  "bitarray": {
    "extra_bits_stored": 0,
    "elems": "string"
  },
  "mode_infos": [
    {
      "single": {
        "mode": "SIGN_MODE_UNSPECIFIED"
      },
      "multi": {
        "bitarray": {
          "extra_bits_stored": 0,
          "elems": "string"
        },
        "mode_infos": [
          {
            "single": null,
            "multi": null
          }
        ]
      }
    }
  ]
}
 

Multi is the mode info for a multisig public key

Properties

NameTypeRequiredRestrictionsDescription
bitarrayobjectfalsenoneCompactBitArray is an implementation of a space efficient bit array.This is used to ensure that the encoded data takes up a minimal amount ofspace after proto encoding.This is not thread safe, and is not intended for concurrent usage.
» extra_bits_storedinteger(int64)falsenonenone
» elemsstring(byte)falsenonenone
mode_infos[cosmos.tx.v1beta1.ModeInfo]falsenone[ModeInfo describes the signing mode of a single or nested multisig signer.]

cosmos.tx.v1beta1.ModeInfo.Single

{
  "mode": "SIGN_MODE_UNSPECIFIED"
}
 

Single is the mode info for a single signer. It is structured as a message to allow for additional fields such as locale for SIGN_MODE_TEXTUAL in the future

Properties

NameTypeRequiredRestrictionsDescription
modestringfalsenoneSignMode represents a signing mode with its own security guarantees.This enum should be considered a registry of all known sign modesin the Cosmos ecosystem. Apps are not expected to support all knownsign modes. Apps that would like to support custom sign modes areencouraged to open a small PR against this file to add a new caseto this SignMode enum describing their sign mode so that differentapps have a consistent version of this enum. - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will berejected. - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and isverified with raw bytes from Tx. - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify somehuman-readable textual representation on top of the binary representationfrom SIGN_MODE_DIRECT. It is currently experimental, and should be usedfor testing purposes only, until Textual is fully released. Please followthe tracking issue https://github.com/cosmos/cosmos-sdk/issues/11970. (opens in a new tab) - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which usesSignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does notrequire signers signing over other signers' signer_info. It also allowsfor adding Tips in transactions.Since: cosmos-sdk 0.46 - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which usesAmino JSON and will be removed in the future. - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the CosmosSDK. Ref: https://eips.ethereum.org/EIPS/eip-191 (opens in a new tab)Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant,but is not implemented on the SDK by default. To enable EIP-191, you needto pass a custom TxConfig that has an implementation ofSignModeHandler for EIP-191. The SDK may decide to fully supportEIP-191 in the future.Since: cosmos-sdk 0.45.2

Enumerated Values

PropertyValue
modeSIGN_MODE_UNSPECIFIED
modeSIGN_MODE_DIRECT
modeSIGN_MODE_TEXTUAL
modeSIGN_MODE_DIRECT_AUX
modeSIGN_MODE_LEGACY_AMINO_JSON
modeSIGN_MODE_EIP_191

cosmos.tx.v1beta1.OrderBy

"ORDER_BY_UNSPECIFIED"
 

OrderBy defines the sorting order

Properties

NameTypeRequiredRestrictionsDescription
OrderBy defines the sorting orderstringfalsenone- ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaultsto ASC in this case. - ORDER_BY_ASC: ORDER_BY_ASC defines ascending order - ORDER_BY_DESC: ORDER_BY_DESC defines descending order

Enumerated Values

PropertyValue
OrderBy defines the sorting orderORDER_BY_UNSPECIFIED
OrderBy defines the sorting orderORDER_BY_ASC
OrderBy defines the sorting orderORDER_BY_DESC

cosmos.tx.v1beta1.SignerInfo

{
  "public_key": {
    "type_url": "string",
    "value": "string"
  },
  "mode_info": {
    "single": {
      "mode": "SIGN_MODE_UNSPECIFIED"
    },
    "multi": {
      "bitarray": {
        "extra_bits_stored": 0,
        "elems": "string"
      },
      "mode_infos": [
        {
          "single": {},
          "multi": {}
        }
      ]
    }
  },
  "sequence": "string"
}
 

SignerInfo describes the public key and signing mode of a single top-level signer.

Properties

NameTypeRequiredRestrictionsDescription
public_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
mode_infocosmos.tx.v1beta1.ModeInfofalsenoneModeInfo describes the signing mode of a single or nested multisig signer.
sequencestring(uint64)falsenonesequence is the sequence of the account, which describes thenumber of committed transactions signed by a given address. It is used toprevent replay attacks.

cosmos.tx.v1beta1.SimulateRequest

{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  },
  "tx_bytes": "string"
}
 

SimulateRequest is the request type for the Service.Simulate RPC method.

Properties

NameTypeRequiredRestrictionsDescription
txcosmos.tx.v1beta1.Txfalsenonetx is the transaction to simulate.Deprecated. Send raw tx bytes instead.
tx_bytesstring(byte)falsenonetx_bytes is the raw transaction.Since: cosmos-sdk 0.43

cosmos.tx.v1beta1.SimulateResponse

{
  "gas_info": {
    "gas_wanted": "string",
    "gas_used": "string"
  },
  "result": {
    "data": "string",
    "log": "string",
    "events": [
      {
        "type": "string",
        "attributes": [
          {
            "key": null,
            "value": null,
            "index": null
          }
        ]
      }
    ],
    "msg_responses": [
      {
        "type_url": "string",
        "value": "string"
      }
    ]
  }
}
 

SimulateResponse is the response type for the Service.SimulateRPC method.

Properties

NameTypeRequiredRestrictionsDescription
gas_infoobjectfalsenonegas_info is the information about gas used in the simulation.
» gas_wantedstring(uint64)falsenoneGasWanted is the maximum units of work we allow this tx to perform.
» gas_usedstring(uint64)falsenoneGasUsed is the amount of gas actually consumed.
resultobjectfalsenoneresult is the result of the simulation.
» datastring(byte)falsenoneData is any data returned from message or handler execution. It MUST belength prefixed in order to separate data from multiple message executions.Deprecated. This field is still populated, but prefer msg_response insteadbecause it also contains the Msg response typeURL.
» logstringfalsenoneLog contains the log information from message or handler execution.
» events[object]falsenoneEvents contains a slice of Event objects that were emitted during messageor handler execution.
»» typestringfalsenonenone
»» attributes[object]falsenonenone
»»» keystringfalsenonenone
»»» valuestringfalsenonenone
»»» indexbooleanfalsenonenone
» msg_responses[object]falsenonemsg_responses contains the Msg handler responses type packed in Anys.Since: cosmos-sdk 0.46
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.tx.v1beta1.Tip

{
  "amount": [
    {
      "denom": "string",
      "amount": "string"
    }
  ],
  "tipper": "string"
}
 

Tip is the tip used for meta-transactions.

Since: cosmos-sdk 0.46

Properties

NameTypeRequiredRestrictionsDescription
amount[object]falsenonenone
» denomstringfalsenonenone
» amountstringfalsenonenone
tipperstringfalsenonenone

cosmos.tx.v1beta1.Tx

{
  "body": {
    "messages": [
      {
        "type_url": "string",
        "value": "string"
      }
    ],
    "memo": "string",
    "timeout_height": "string",
    "extension_options": [
      {
        "type_url": "string",
        "value": "string"
      }
    ],
    "non_critical_extension_options": [
      {
        "type_url": "string",
        "value": "string"
      }
    ]
  },
  "auth_info": {
    "signer_infos": [
      {
        "public_key": {
          "type_url": "string",
          "value": "string"
        },
        "mode_info": {
          "single": {},
          "multi": {}
        },
        "sequence": "string"
      }
    ],
    "fee": {
      "amount": [
        {
          "denom": "string",
          "amount": "string"
        }
      ],
      "gas_limit": "string",
      "payer": "string",
      "granter": "string"
    },
    "tip": {
      "amount": [
        {
          "denom": "string",
          "amount": "string"
        }
      ],
      "tipper": "string"
    }
  },
  "signatures": [
    "string"
  ]
}
 

Tx is the standard type used for broadcasting transactions.

Properties

NameTypeRequiredRestrictionsDescription
bodyobjectfalsenoneTxBody is the body of a transaction that all signers sign over.
» messages[object]falsenonemessages is a list of messages to be executed. The required signers ofthose messages define the number and order of elements in AuthInfo'ssigner_infos and Tx's signatures. Each required signer address is added tothe list only the first time it occurs.By convention, the first required signer (usually from the first message)is referred to as the primary signer and pays the fee for the wholetransaction.
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» memostringfalsenonememo is any arbitrary note/comment to be added to the transaction.WARNING: in clients, any publicly exposed text should not be called memo,but should be called note instead (see https://github.com/cosmos/cosmos-sdk/issues/9122 (opens in a new tab)).
» timeout_heightstring(uint64)falsenonenone
» extension_options[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» non_critical_extension_options[object]falsenonenone
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
auth_infocosmos.tx.v1beta1.AuthInfofalsenoneAuthInfo describes the fee and signer modes that are used to sign atransaction.
signatures[string]falsenonesignatures is a list of signatures that matches the length and order ofAuthInfo's signer_infos to allow connecting signature meta information likepublic key and signing mode by position.

cosmos.tx.v1beta1.TxBody

{
  "messages": [
    {
      "type_url": "string",
      "value": "string"
    }
  ],
  "memo": "string",
  "timeout_height": "string",
  "extension_options": [
    {
      "type_url": "string",
      "value": "string"
    }
  ],
  "non_critical_extension_options": [
    {
      "type_url": "string",
      "value": "string"
    }
  ]
}
 

TxBody is the body of a transaction that all signers sign over.

Properties

NameTypeRequiredRestrictionsDescription
messages[object]falsenonemessages is a list of messages to be executed. The required signers ofthose messages define the number and order of elements in AuthInfo'ssigner_infos and Tx's signatures. Each required signer address is added tothe list only the first time it occurs.By convention, the first required signer (usually from the first message)is referred to as the primary signer and pays the fee for the wholetransaction.
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
memostringfalsenonememo is any arbitrary note/comment to be added to the transaction.WARNING: in clients, any publicly exposed text should not be called memo,but should be called note instead (see https://github.com/cosmos/cosmos-sdk/issues/9122 (opens in a new tab)).
timeout_heightstring(uint64)falsenonenone
extension_options[object]falsenonenone
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
non_critical_extension_options[object]falsenonenone
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.tx.v1beta1.TxDecodeAminoRequest

{
  "amino_binary": "string"
}
 

TxDecodeAminoRequest is the request type for the Service.TxDecodeAmino RPC method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
amino_binarystring(byte)falsenonenone

cosmos.tx.v1beta1.TxDecodeAminoResponse

{
  "amino_json": "string"
}
 

TxDecodeAminoResponse is the response type for the Service.TxDecodeAmino RPC method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
amino_jsonstringfalsenonenone

cosmos.tx.v1beta1.TxDecodeRequest

{
  "tx_bytes": "string"
}
 

TxDecodeRequest is the request type for the Service.TxDecode RPC method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
tx_bytesstring(byte)falsenonetx_bytes is the raw transaction.

cosmos.tx.v1beta1.TxDecodeResponse

{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  }
}
 

TxDecodeResponse is the response type for the Service.TxDecode method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
txcosmos.tx.v1beta1.Txfalsenonetx is the decoded transaction.

cosmos.tx.v1beta1.TxEncodeAminoRequest

{
  "amino_json": "string"
}
 

TxEncodeAminoRequest is the request type for the Service.TxEncodeAmino RPC method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
amino_jsonstringfalsenonenone

cosmos.tx.v1beta1.TxEncodeAminoResponse

{
  "amino_binary": "string"
}
 

TxEncodeAminoResponse is the response type for the Service.TxEncodeAmino RPC method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
amino_binarystring(byte)falsenonenone

cosmos.tx.v1beta1.TxEncodeRequest

{
  "tx": {
    "body": {
      "messages": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "memo": "string",
      "timeout_height": "string",
      "extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ],
      "non_critical_extension_options": [
        {
          "type_url": "string",
          "value": "string"
        }
      ]
    },
    "auth_info": {
      "signer_infos": [
        {
          "public_key": {},
          "mode_info": {},
          "sequence": "string"
        }
      ],
      "fee": {
        "amount": [
          {}
        ],
        "gas_limit": "string",
        "payer": "string",
        "granter": "string"
      },
      "tip": {
        "amount": [
          {}
        ],
        "tipper": "string"
      }
    },
    "signatures": [
      "string"
    ]
  }
}
 

TxEncodeRequest is the request type for the Service.TxEncode RPC method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
txcosmos.tx.v1beta1.Txfalsenonetx is the transaction to encode.

cosmos.tx.v1beta1.TxEncodeResponse

{
  "tx_bytes": "string"
}
 

TxEncodeResponse is the response type for the Service.TxEncode method.

Since: cosmos-sdk 0.47

Properties

NameTypeRequiredRestrictionsDescription
tx_bytesstring(byte)falsenonetx_bytes is the encoded transaction bytes.

tendermint.abci.Event

{
  "type": "string",
  "attributes": [
    {
      "key": "string",
      "value": "string",
      "index": true
    }
  ]
}
 

Event allows application developers to attach additional information to ResponseFinalizeBlock and ResponseCheckTx. Later, transactions may be queried using these events.

Properties

NameTypeRequiredRestrictionsDescription
typestringfalsenonenone
attributes[object]falsenonenone
» keystringfalsenonenone
» valuestringfalsenonenone
» indexbooleanfalsenonenone

tendermint.abci.EventAttribute

{
  "key": "string",
  "value": "string",
  "index": true
}
 

EventAttribute is a single key-value pair, associated with an event.

Properties

NameTypeRequiredRestrictionsDescription
keystringfalsenonenone
valuestringfalsenonenone
indexbooleanfalsenonenone

tendermint.crypto.PublicKey

{
  "ed25519": "string",
  "secp256k1": "string"
}
 

PublicKey defines the keys available for use with Validators

Properties

NameTypeRequiredRestrictionsDescription
ed25519string(byte)falsenonenone
secp256k1string(byte)falsenonenone

tendermint.types.Block

{
  "header": {
    "version": {
      "block": "string",
      "app": "string"
    },
    "chain_id": "string",
    "height": "string",
    "time": "2019-08-24T14:15:22Z",
    "last_block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "last_commit_hash": "string",
    "data_hash": "string",
    "validators_hash": "string",
    "next_validators_hash": "string",
    "consensus_hash": "string",
    "app_hash": "string",
    "last_results_hash": "string",
    "evidence_hash": "string",
    "proposer_address": "string"
  },
  "data": {
    "txs": [
      "string"
    ]
  },
  "evidence": {
    "evidence": [
      {
        "duplicate_vote_evidence": {
          "vote_a": {},
          "vote_b": {},
          "total_voting_power": "string",
          "validator_power": "string",
          "timestamp": "2019-08-24T14:15:22Z"
        },
        "light_client_attack_evidence": {
          "conflicting_block": {},
          "common_height": "string",
          "byzantine_validators": [
            null
          ],
          "total_voting_power": "string",
          "timestamp": "2019-08-24T14:15:22Z"
        }
      }
    ]
  },
  "last_commit": {
    "height": "string",
    "round": 0,
    "block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "signatures": [
      {
        "block_id_flag": "BLOCK_ID_FLAG_UNKNOWN",
        "validator_address": "string",
        "timestamp": "2019-08-24T14:15:22Z",
        "signature": "string"
      }
    ]
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
headerobjectfalsenoneHeader defines the structure of a block header.
» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»» blockstring(uint64)falsenonenone
»» appstring(uint64)falsenonenone
» chain_idstringfalsenonenone
» heightstring(int64)falsenonenone
» timestring(date-time)falsenonenone
» last_block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» last_commit_hashstring(byte)falsenonenone
» data_hashstring(byte)falsenonenone
» validators_hashstring(byte)falsenonenone
» next_validators_hashstring(byte)falsenonenone
» consensus_hashstring(byte)falsenonenone
» app_hashstring(byte)falsenonenone
» last_results_hashstring(byte)falsenonenone
» evidence_hashstring(byte)falsenonenone
» proposer_addressstring(byte)falsenonenone
dataobjectfalsenonenone
» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
evidenceobjectfalsenonenone
» evidence[object]falsenonenone
»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»» heightstring(int64)falsenonenone
»»»» roundinteger(int32)falsenonenone
»»»» block_idobjectfalsenonenone
»»»»» hashstring(byte)falsenonenone
»»»»» part_set_headerobjectfalsenonenone
»»»»»» totalinteger(int64)falsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» validator_indexinteger(int32)falsenonenone
»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»» heightstring(int64)falsenonenone
»»»» roundinteger(int32)falsenonenone
»»»» block_idobjectfalsenonenone
»»»»» hashstring(byte)falsenonenone
»»»»» part_set_headerobjectfalsenonenone
»»»»»» totalinteger(int64)falsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» validator_indexinteger(int32)falsenonenone
»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»» total_voting_powerstring(int64)falsenonenone
»»» validator_powerstring(int64)falsenonenone
»»» timestampstring(date-time)falsenonenone
»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»» conflicting_blockobjectfalsenonenone
»»»» signed_headerobjectfalsenonenone
»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»» blockstring(uint64)falsenonenone
»»»»»»» appstring(uint64)falsenonenone
»»»»»» chain_idstringfalsenonenone
»»»»»» heightstring(int64)falsenonenone
»»»»»» timestring(date-time)falsenonenone
»»»»»» last_block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»» data_hashstring(byte)falsenonenone
»»»»»» validators_hashstring(byte)falsenonenone
»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»» app_hashstring(byte)falsenonenone
»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»» proposer_addressstring(byte)falsenonenone
»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» signatures[object]falsenonenone
»»»»»»» block_id_flagstringfalsenonenone
»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»» signaturestring(byte)falsenonenone
»»»» validator_setobjectfalsenonenone
»»»»» validators[object]falsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» proposerobjectfalsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» total_voting_powerstring(int64)falsenonenone
»»» common_heightstring(int64)falsenonenone
»»» byzantine_validators[object]falsenonenone
»»»» addressstring(byte)falsenonenone
»»»» pub_keyobjectfalsenonenone
»»»»» ed25519string(byte)falsenonenone
»»»»» secp256k1string(byte)falsenonenone
»»»» voting_powerstring(int64)falsenonenone
»»»» proposer_prioritystring(int64)falsenonenone
»»» total_voting_powerstring(int64)falsenonenone
»»» timestampstring(date-time)falsenonenone
last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
» heightstring(int64)falsenonenone
» roundinteger(int32)falsenonenone
» block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» signatures[object]falsenonenone
»» block_id_flagstringfalsenonenone
»» validator_addressstring(byte)falsenonenone
»» timestampstring(date-time)falsenonenone
»» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.BlockIDFlag

"BLOCK_ID_FLAG_UNKNOWN"
 

BlockIdFlag indicates which BlockID the signature is for

Properties

NameTypeRequiredRestrictionsDescription
BlockIdFlag indicates which BlockID the signature is forstringfalsenonenone

Enumerated Values

PropertyValue
BlockIdFlag indicates which BlockID the signature is forBLOCK_ID_FLAG_UNKNOWN
BlockIdFlag indicates which BlockID the signature is forBLOCK_ID_FLAG_ABSENT
BlockIdFlag indicates which BlockID the signature is forBLOCK_ID_FLAG_COMMIT
BlockIdFlag indicates which BlockID the signature is forBLOCK_ID_FLAG_NIL

tendermint.types.Commit

{
  "height": "string",
  "round": 0,
  "block_id": {
    "hash": "string",
    "part_set_header": {
      "total": 0,
      "hash": "string"
    }
  },
  "signatures": [
    {
      "block_id_flag": "BLOCK_ID_FLAG_UNKNOWN",
      "validator_address": "string",
      "timestamp": "2019-08-24T14:15:22Z",
      "signature": "string"
    }
  ]
}
 

Commit contains the evidence that a block was committed by a set of validators.

Properties

NameTypeRequiredRestrictionsDescription
heightstring(int64)falsenonenone
roundinteger(int32)falsenonenone
block_idobjectfalsenonenone
» hashstring(byte)falsenonenone
» part_set_headerobjectfalsenonenone
»» totalinteger(int64)falsenonenone
»» hashstring(byte)falsenonenone
signatures[object]falsenonenone
» block_id_flagstringfalsenonenone
» validator_addressstring(byte)falsenonenone
» timestampstring(date-time)falsenonenone
» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.CommitSig

{
  "block_id_flag": "BLOCK_ID_FLAG_UNKNOWN",
  "validator_address": "string",
  "timestamp": "2019-08-24T14:15:22Z",
  "signature": "string"
}
 

CommitSig is a part of the Vote included in a Commit.

Properties

NameTypeRequiredRestrictionsDescription
block_id_flagstringfalsenonenone
validator_addressstring(byte)falsenonenone
timestampstring(date-time)falsenonenone
signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.Data

{
  "txs": [
    "string"
  ]
}
 

Data contains the set of transactions included in the block

Properties

NameTypeRequiredRestrictionsDescription
txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.

tendermint.types.DuplicateVoteEvidence

{
  "vote_a": {
    "type": "SIGNED_MSG_TYPE_UNKNOWN",
    "height": "string",
    "round": 0,
    "block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "timestamp": "2019-08-24T14:15:22Z",
    "validator_address": "string",
    "validator_index": 0,
    "signature": "string",
    "extension": "string",
    "extension_signature": "string"
  },
  "vote_b": {
    "type": "SIGNED_MSG_TYPE_UNKNOWN",
    "height": "string",
    "round": 0,
    "block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "timestamp": "2019-08-24T14:15:22Z",
    "validator_address": "string",
    "validator_index": 0,
    "signature": "string",
    "extension": "string",
    "extension_signature": "string"
  },
  "total_voting_power": "string",
  "validator_power": "string",
  "timestamp": "2019-08-24T14:15:22Z"
}
 

DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.

Properties

NameTypeRequiredRestrictionsDescription
vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
» heightstring(int64)falsenonenone
» roundinteger(int32)falsenonenone
» block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» timestampstring(date-time)falsenonenone
» validator_addressstring(byte)falsenonenone
» validator_indexinteger(int32)falsenonenone
» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
» heightstring(int64)falsenonenone
» roundinteger(int32)falsenonenone
» block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» timestampstring(date-time)falsenonenone
» validator_addressstring(byte)falsenonenone
» validator_indexinteger(int32)falsenonenone
» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
total_voting_powerstring(int64)falsenonenone
validator_powerstring(int64)falsenonenone
timestampstring(date-time)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL

tendermint.types.Evidence

{
  "duplicate_vote_evidence": {
    "vote_a": {
      "type": "SIGNED_MSG_TYPE_UNKNOWN",
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "timestamp": "2019-08-24T14:15:22Z",
      "validator_address": "string",
      "validator_index": 0,
      "signature": "string",
      "extension": "string",
      "extension_signature": "string"
    },
    "vote_b": {
      "type": "SIGNED_MSG_TYPE_UNKNOWN",
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "timestamp": "2019-08-24T14:15:22Z",
      "validator_address": "string",
      "validator_index": 0,
      "signature": "string",
      "extension": "string",
      "extension_signature": "string"
    },
    "total_voting_power": "string",
    "validator_power": "string",
    "timestamp": "2019-08-24T14:15:22Z"
  },
  "light_client_attack_evidence": {
    "conflicting_block": {
      "signed_header": {
        "header": {
          "version": null,
          "chain_id": null,
          "height": null,
          "time": null,
          "last_block_id": null,
          "last_commit_hash": null,
          "data_hash": null,
          "validators_hash": null,
          "next_validators_hash": null,
          "consensus_hash": null,
          "app_hash": null,
          "last_results_hash": null,
          "evidence_hash": null,
          "proposer_address": null
        },
        "commit": {
          "height": null,
          "round": null,
          "block_id": null,
          "signatures": null
        }
      },
      "validator_set": {
        "validators": [
          {}
        ],
        "proposer": {
          "address": null,
          "pub_key": null,
          "voting_power": null,
          "proposer_priority": null
        },
        "total_voting_power": "string"
      }
    },
    "common_height": "string",
    "byzantine_validators": [
      {
        "address": "string",
        "pub_key": {
          "ed25519": "string",
          "secp256k1": "string"
        },
        "voting_power": "string",
        "proposer_priority": "string"
      }
    ],
    "total_voting_power": "string",
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» timestampstring(date-time)falsenonenone
»» validator_addressstring(byte)falsenonenone
»» validator_indexinteger(int32)falsenonenone
»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» timestampstring(date-time)falsenonenone
»» validator_addressstring(byte)falsenonenone
»» validator_indexinteger(int32)falsenonenone
»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
» total_voting_powerstring(int64)falsenonenone
» validator_powerstring(int64)falsenonenone
» timestampstring(date-time)falsenonenone
light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
» conflicting_blockobjectfalsenonenone
»» signed_headerobjectfalsenonenone
»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»» blockstring(uint64)falsenonenone
»»»»» appstring(uint64)falsenonenone
»»»» chain_idstringfalsenonenone
»»»» heightstring(int64)falsenonenone
»»»» timestring(date-time)falsenonenone
»»»» last_block_idobjectfalsenonenone
»»»»» hashstring(byte)falsenonenone
»»»»» part_set_headerobjectfalsenonenone
»»»»»» totalinteger(int64)falsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»» last_commit_hashstring(byte)falsenonenone
»»»» data_hashstring(byte)falsenonenone
»»»» validators_hashstring(byte)falsenonenone
»»»» next_validators_hashstring(byte)falsenonenone
»»»» consensus_hashstring(byte)falsenonenone
»»»» app_hashstring(byte)falsenonenone
»»»» last_results_hashstring(byte)falsenonenone
»»»» evidence_hashstring(byte)falsenonenone
»»»» proposer_addressstring(byte)falsenonenone
»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»» heightstring(int64)falsenonenone
»»»» roundinteger(int32)falsenonenone
»»»» block_idobjectfalsenonenone
»»»»» hashstring(byte)falsenonenone
»»»»» part_set_headerobjectfalsenonenone
»»»»»» totalinteger(int64)falsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»» signatures[object]falsenonenone
»»»»» block_id_flagstringfalsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» signaturestring(byte)falsenonenone
»» validator_setobjectfalsenonenone
»»» validators[object]falsenonenone
»»»» addressstring(byte)falsenonenone
»»»» pub_keyobjectfalsenonenone
»»»»» ed25519string(byte)falsenonenone
»»»»» secp256k1string(byte)falsenonenone
»»»» voting_powerstring(int64)falsenonenone
»»»» proposer_prioritystring(int64)falsenonenone
»»» proposerobjectfalsenonenone
»»»» addressstring(byte)falsenonenone
»»»» pub_keyobjectfalsenonenone
»»»»» ed25519string(byte)falsenonenone
»»»»» secp256k1string(byte)falsenonenone
»»»» voting_powerstring(int64)falsenonenone
»»»» proposer_prioritystring(int64)falsenonenone
»»» total_voting_powerstring(int64)falsenonenone
» common_heightstring(int64)falsenonenone
» byzantine_validators[object]falsenonenone
»» addressstring(byte)falsenonenone
»» pub_keyobjectfalsenonenone
»»» ed25519string(byte)falsenonenone
»»» secp256k1string(byte)falsenonenone
»» voting_powerstring(int64)falsenonenone
»» proposer_prioritystring(int64)falsenonenone
» total_voting_powerstring(int64)falsenonenone
» timestampstring(date-time)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.EvidenceList

{
  "evidence": [
    {
      "duplicate_vote_evidence": {
        "vote_a": {
          "type": "[",
          "height": "string",
          "round": 0,
          "block_id": {},
          "timestamp": "2019-08-24T14:15:22Z",
          "validator_address": "string",
          "validator_index": 0,
          "signature": "string",
          "extension": "string",
          "extension_signature": "string"
        },
        "vote_b": {
          "type": "[",
          "height": "string",
          "round": 0,
          "block_id": {},
          "timestamp": "2019-08-24T14:15:22Z",
          "validator_address": "string",
          "validator_index": 0,
          "signature": "string",
          "extension": "string",
          "extension_signature": "string"
        },
        "total_voting_power": "string",
        "validator_power": "string",
        "timestamp": "2019-08-24T14:15:22Z"
      },
      "light_client_attack_evidence": {
        "conflicting_block": {
          "signed_header": {},
          "validator_set": {}
        },
        "common_height": "string",
        "byzantine_validators": [
          {
            "address": null,
            "pub_key": null,
            "voting_power": null,
            "proposer_priority": null
          }
        ],
        "total_voting_power": "string",
        "timestamp": "2019-08-24T14:15:22Z"
      }
    }
  ]
}
 

Properties

NameTypeRequiredRestrictionsDescription
evidence[object]falsenonenone
» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»» heightstring(int64)falsenonenone
»»» roundinteger(int32)falsenonenone
»»» block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» validator_indexinteger(int32)falsenonenone
»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»» heightstring(int64)falsenonenone
»»» roundinteger(int32)falsenonenone
»»» block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» validator_indexinteger(int32)falsenonenone
»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»» total_voting_powerstring(int64)falsenonenone
»» validator_powerstring(int64)falsenonenone
»» timestampstring(date-time)falsenonenone
» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»» conflicting_blockobjectfalsenonenone
»»» signed_headerobjectfalsenonenone
»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»» blockstring(uint64)falsenonenone
»»»»»» appstring(uint64)falsenonenone
»»»»» chain_idstringfalsenonenone
»»»»» heightstring(int64)falsenonenone
»»»»» timestring(date-time)falsenonenone
»»»»» last_block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» last_commit_hashstring(byte)falsenonenone
»»»»» data_hashstring(byte)falsenonenone
»»»»» validators_hashstring(byte)falsenonenone
»»»»» next_validators_hashstring(byte)falsenonenone
»»»»» consensus_hashstring(byte)falsenonenone
»»»»» app_hashstring(byte)falsenonenone
»»»»» last_results_hashstring(byte)falsenonenone
»»»»» evidence_hashstring(byte)falsenonenone
»»»»» proposer_addressstring(byte)falsenonenone
»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» signatures[object]falsenonenone
»»»»»» block_id_flagstringfalsenonenone
»»»»»» validator_addressstring(byte)falsenonenone
»»»»»» timestampstring(date-time)falsenonenone
»»»»»» signaturestring(byte)falsenonenone
»»» validator_setobjectfalsenonenone
»»»» validators[object]falsenonenone
»»»»» addressstring(byte)falsenonenone
»»»»» pub_keyobjectfalsenonenone
»»»»»» ed25519string(byte)falsenonenone
»»»»»» secp256k1string(byte)falsenonenone
»»»»» voting_powerstring(int64)falsenonenone
»»»»» proposer_prioritystring(int64)falsenonenone
»»»» proposerobjectfalsenonenone
»»»»» addressstring(byte)falsenonenone
»»»»» pub_keyobjectfalsenonenone
»»»»»» ed25519string(byte)falsenonenone
»»»»»» secp256k1string(byte)falsenonenone
»»»»» voting_powerstring(int64)falsenonenone
»»»»» proposer_prioritystring(int64)falsenonenone
»»»» total_voting_powerstring(int64)falsenonenone
»» common_heightstring(int64)falsenonenone
»» byzantine_validators[object]falsenonenone
»»» addressstring(byte)falsenonenone
»»» pub_keyobjectfalsenonenone
»»»» ed25519string(byte)falsenonenone
»»»» secp256k1string(byte)falsenonenone
»»» voting_powerstring(int64)falsenonenone
»»» proposer_prioritystring(int64)falsenonenone
»» total_voting_powerstring(int64)falsenonenone
»» timestampstring(date-time)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.LightBlock

{
  "signed_header": {
    "header": {
      "version": {
        "block": "string",
        "app": "string"
      },
      "chain_id": "string",
      "height": "string",
      "time": "2019-08-24T14:15:22Z",
      "last_block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "last_commit_hash": "string",
      "data_hash": "string",
      "validators_hash": "string",
      "next_validators_hash": "string",
      "consensus_hash": "string",
      "app_hash": "string",
      "last_results_hash": "string",
      "evidence_hash": "string",
      "proposer_address": "string"
    },
    "commit": {
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "signatures": [
        {
          "block_id_flag": "[",
          "validator_address": "string",
          "timestamp": "2019-08-24T14:15:22Z",
          "signature": "string"
        }
      ]
    }
  },
  "validator_set": {
    "validators": [
      {
        "address": "string",
        "pub_key": {
          "ed25519": "string",
          "secp256k1": "string"
        },
        "voting_power": "string",
        "proposer_priority": "string"
      }
    ],
    "proposer": {
      "address": "string",
      "pub_key": {
        "ed25519": "string",
        "secp256k1": "string"
      },
      "voting_power": "string",
      "proposer_priority": "string"
    },
    "total_voting_power": "string"
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
signed_headerobjectfalsenonenone
» headerobjectfalsenoneHeader defines the structure of a block header.
»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» chain_idstringfalsenonenone
»» heightstring(int64)falsenonenone
»» timestring(date-time)falsenonenone
»» last_block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» last_commit_hashstring(byte)falsenonenone
»» data_hashstring(byte)falsenonenone
»» validators_hashstring(byte)falsenonenone
»» next_validators_hashstring(byte)falsenonenone
»» consensus_hashstring(byte)falsenonenone
»» app_hashstring(byte)falsenonenone
»» last_results_hashstring(byte)falsenonenone
»» evidence_hashstring(byte)falsenonenone
»» proposer_addressstring(byte)falsenonenone
» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» signatures[object]falsenonenone
»»» block_id_flagstringfalsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» signaturestring(byte)falsenonenone
validator_setobjectfalsenonenone
» validators[object]falsenonenone
»» addressstring(byte)falsenonenone
»» pub_keyobjectfalsenonenone
»»» ed25519string(byte)falsenonenone
»»» secp256k1string(byte)falsenonenone
»» voting_powerstring(int64)falsenonenone
»» proposer_prioritystring(int64)falsenonenone
» proposerobjectfalsenonenone
»» addressstring(byte)falsenonenone
»» pub_keyobjectfalsenonenone
»»» ed25519string(byte)falsenonenone
»»» secp256k1string(byte)falsenonenone
»» voting_powerstring(int64)falsenonenone
»» proposer_prioritystring(int64)falsenonenone
» total_voting_powerstring(int64)falsenonenone

Enumerated Values

PropertyValue
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.LightClientAttackEvidence

{
  "conflicting_block": {
    "signed_header": {
      "header": {
        "version": {
          "block": null,
          "app": null
        },
        "chain_id": "string",
        "height": "string",
        "time": "2019-08-24T14:15:22Z",
        "last_block_id": {
          "hash": null,
          "part_set_header": null
        },
        "last_commit_hash": "string",
        "data_hash": "string",
        "validators_hash": "string",
        "next_validators_hash": "string",
        "consensus_hash": "string",
        "app_hash": "string",
        "last_results_hash": "string",
        "evidence_hash": "string",
        "proposer_address": "string"
      },
      "commit": {
        "height": "string",
        "round": 0,
        "block_id": {
          "hash": null,
          "part_set_header": null
        },
        "signatures": [
          {}
        ]
      }
    },
    "validator_set": {
      "validators": [
        {
          "address": "string",
          "pub_key": {},
          "voting_power": "string",
          "proposer_priority": "string"
        }
      ],
      "proposer": {
        "address": "string",
        "pub_key": {
          "ed25519": null,
          "secp256k1": null
        },
        "voting_power": "string",
        "proposer_priority": "string"
      },
      "total_voting_power": "string"
    }
  },
  "common_height": "string",
  "byzantine_validators": [
    {
      "address": "string",
      "pub_key": {
        "ed25519": "string",
        "secp256k1": "string"
      },
      "voting_power": "string",
      "proposer_priority": "string"
    }
  ],
  "total_voting_power": "string",
  "timestamp": "2019-08-24T14:15:22Z"
}
 

LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.

Properties

NameTypeRequiredRestrictionsDescription
conflicting_blockobjectfalsenonenone
» signed_headerobjectfalsenonenone
»» headerobjectfalsenoneHeader defines the structure of a block header.
»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»» blockstring(uint64)falsenonenone
»»»» appstring(uint64)falsenonenone
»»» chain_idstringfalsenonenone
»»» heightstring(int64)falsenonenone
»»» timestring(date-time)falsenonenone
»»» last_block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» last_commit_hashstring(byte)falsenonenone
»»» data_hashstring(byte)falsenonenone
»»» validators_hashstring(byte)falsenonenone
»»» next_validators_hashstring(byte)falsenonenone
»»» consensus_hashstring(byte)falsenonenone
»»» app_hashstring(byte)falsenonenone
»»» last_results_hashstring(byte)falsenonenone
»»» evidence_hashstring(byte)falsenonenone
»»» proposer_addressstring(byte)falsenonenone
»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»» heightstring(int64)falsenonenone
»»» roundinteger(int32)falsenonenone
»»» block_idobjectfalsenonenone
»»»» hashstring(byte)falsenonenone
»»»» part_set_headerobjectfalsenonenone
»»»»» totalinteger(int64)falsenonenone
»»»»» hashstring(byte)falsenonenone
»»» signatures[object]falsenonenone
»»»» block_id_flagstringfalsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» signaturestring(byte)falsenonenone
» validator_setobjectfalsenonenone
»» validators[object]falsenonenone
»»» addressstring(byte)falsenonenone
»»» pub_keyobjectfalsenonenone
»»»» ed25519string(byte)falsenonenone
»»»» secp256k1string(byte)falsenonenone
»»» voting_powerstring(int64)falsenonenone
»»» proposer_prioritystring(int64)falsenonenone
»» proposerobjectfalsenonenone
»»» addressstring(byte)falsenonenone
»»» pub_keyobjectfalsenonenone
»»»» ed25519string(byte)falsenonenone
»»»» secp256k1string(byte)falsenonenone
»»» voting_powerstring(int64)falsenonenone
»»» proposer_prioritystring(int64)falsenonenone
»» total_voting_powerstring(int64)falsenonenone
common_heightstring(int64)falsenonenone
byzantine_validators[object]falsenonenone
» addressstring(byte)falsenonenone
» pub_keyobjectfalsenonenone
»» ed25519string(byte)falsenonenone
»» secp256k1string(byte)falsenonenone
» voting_powerstring(int64)falsenonenone
» proposer_prioritystring(int64)falsenonenone
total_voting_powerstring(int64)falsenonenone
timestampstring(date-time)falsenonenone

Enumerated Values

PropertyValue
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.SignedHeader

{
  "header": {
    "version": {
      "block": "string",
      "app": "string"
    },
    "chain_id": "string",
    "height": "string",
    "time": "2019-08-24T14:15:22Z",
    "last_block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "last_commit_hash": "string",
    "data_hash": "string",
    "validators_hash": "string",
    "next_validators_hash": "string",
    "consensus_hash": "string",
    "app_hash": "string",
    "last_results_hash": "string",
    "evidence_hash": "string",
    "proposer_address": "string"
  },
  "commit": {
    "height": "string",
    "round": 0,
    "block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "signatures": [
      {
        "block_id_flag": "BLOCK_ID_FLAG_UNKNOWN",
        "validator_address": "string",
        "timestamp": "2019-08-24T14:15:22Z",
        "signature": "string"
      }
    ]
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
headerobjectfalsenoneHeader defines the structure of a block header.
» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»» blockstring(uint64)falsenonenone
»» appstring(uint64)falsenonenone
» chain_idstringfalsenonenone
» heightstring(int64)falsenonenone
» timestring(date-time)falsenonenone
» last_block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» last_commit_hashstring(byte)falsenonenone
» data_hashstring(byte)falsenonenone
» validators_hashstring(byte)falsenonenone
» next_validators_hashstring(byte)falsenonenone
» consensus_hashstring(byte)falsenonenone
» app_hashstring(byte)falsenonenone
» last_results_hashstring(byte)falsenonenone
» evidence_hashstring(byte)falsenonenone
» proposer_addressstring(byte)falsenonenone
commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
» heightstring(int64)falsenonenone
» roundinteger(int32)falsenonenone
» block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» signatures[object]falsenonenone
»» block_id_flagstringfalsenonenone
»» validator_addressstring(byte)falsenonenone
»» timestampstring(date-time)falsenonenone
»» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

tendermint.types.SignedMsgType

"SIGNED_MSG_TYPE_UNKNOWN"
 

SignedMsgType is a type of signed message in the consensus.

  • SIGNED_MSG_TYPE_PREVOTE: Votes
  • SIGNED_MSG_TYPE_PROPOSAL: Proposals

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals

Enumerated Values

PropertyValue
anonymousSIGNED_MSG_TYPE_UNKNOWN
anonymousSIGNED_MSG_TYPE_PREVOTE
anonymousSIGNED_MSG_TYPE_PRECOMMIT
anonymousSIGNED_MSG_TYPE_PROPOSAL

tendermint.types.Validator

{
  "address": "string",
  "pub_key": {
    "ed25519": "string",
    "secp256k1": "string"
  },
  "voting_power": "string",
  "proposer_priority": "string"
}
 

Properties

NameTypeRequiredRestrictionsDescription
addressstring(byte)falsenonenone
pub_keyobjectfalsenonenone
» ed25519string(byte)falsenonenone
» secp256k1string(byte)falsenonenone
voting_powerstring(int64)falsenonenone
proposer_prioritystring(int64)falsenonenone

tendermint.types.ValidatorSet

{
  "validators": [
    {
      "address": "string",
      "pub_key": {
        "ed25519": "string",
        "secp256k1": "string"
      },
      "voting_power": "string",
      "proposer_priority": "string"
    }
  ],
  "proposer": {
    "address": "string",
    "pub_key": {
      "ed25519": "string",
      "secp256k1": "string"
    },
    "voting_power": "string",
    "proposer_priority": "string"
  },
  "total_voting_power": "string"
}
 

Properties

NameTypeRequiredRestrictionsDescription
validators[object]falsenonenone
» addressstring(byte)falsenonenone
» pub_keyobjectfalsenonenone
»» ed25519string(byte)falsenonenone
»» secp256k1string(byte)falsenonenone
» voting_powerstring(int64)falsenonenone
» proposer_prioritystring(int64)falsenonenone
proposerobjectfalsenonenone
» addressstring(byte)falsenonenone
» pub_keyobjectfalsenonenone
»» ed25519string(byte)falsenonenone
»» secp256k1string(byte)falsenonenone
» voting_powerstring(int64)falsenonenone
» proposer_prioritystring(int64)falsenonenone
total_voting_powerstring(int64)falsenonenone

tendermint.types.Vote

{
  "type": "SIGNED_MSG_TYPE_UNKNOWN",
  "height": "string",
  "round": 0,
  "block_id": {
    "hash": "string",
    "part_set_header": {
      "total": 0,
      "hash": "string"
    }
  },
  "timestamp": "2019-08-24T14:15:22Z",
  "validator_address": "string",
  "validator_index": 0,
  "signature": "string",
  "extension": "string",
  "extension_signature": "string"
}
 

Vote represents a prevote or precommit vote from validators for consensus.

Properties

NameTypeRequiredRestrictionsDescription
typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
heightstring(int64)falsenonenone
roundinteger(int32)falsenonenone
block_idobjectfalsenonenone
» hashstring(byte)falsenonenone
» part_set_headerobjectfalsenonenone
»» totalinteger(int64)falsenonenone
»» hashstring(byte)falsenonenone
timestampstring(date-time)falsenonenone
validator_addressstring(byte)falsenonenone
validator_indexinteger(int32)falsenonenone
signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL

cosmos.upgrade.v1beta1.ModuleVersion

{
  "name": "string",
  "version": "string"
}
 

ModuleVersion specifies a module and its consensus version.

Since: cosmos-sdk 0.43

Properties

NameTypeRequiredRestrictionsDescription
namestringfalsenonenone
versionstring(uint64)falsenonenone

cosmos.upgrade.v1beta1.Plan

{
  "name": "string",
  "time": "2019-08-24T14:15:22Z",
  "height": "string",
  "info": "string",
  "upgraded_client_state": {
    "type_url": "string",
    "value": "string"
  }
}
 

Plan specifies information about a planned upgrade and when it should occur.

Properties

NameTypeRequiredRestrictionsDescription
namestringfalsenoneSets the name for the upgrade. This name will be used by the upgradedversion of the software to apply any special "on-upgrade" commands duringthe first BeginBlock method after the upgrade is applied. It is also usedto detect whether a software version can handle a given upgrade. If noupgrade handler with this name has been set in the software, it will beassumed that the software is out-of-date when the upgrade Time or Height isreached and the software will exit.
timestring(date-time)falsenoneDeprecated: Time based upgrades have been deprecated. Time based upgrade logichas been removed from the SDK.If this field is not empty, an error will be thrown.
heightstring(int64)falsenoneThe height at which the upgrade must be performed.
infostringfalsenonenone
upgraded_client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.upgrade.v1beta1.QueryAppliedPlanResponse

{
  "height": "string"
}
 

QueryAppliedPlanResponse is the response type for the Query/AppliedPlan RPC method.

Properties

NameTypeRequiredRestrictionsDescription
heightstring(int64)falsenoneheight is the block height at which the plan was applied.

cosmos.upgrade.v1beta1.QueryAuthorityResponse

{
  "address": "string"
}
 

QueryAuthorityResponse is the response type for Query/Authority

Properties

NameTypeRequiredRestrictionsDescription
addressstringfalsenonenone

cosmos.upgrade.v1beta1.QueryCurrentPlanResponse

{
  "plan": {
    "name": "string",
    "time": "2019-08-24T14:15:22Z",
    "height": "string",
    "info": "string",
    "upgraded_client_state": {
      "type_url": "string",
      "value": "string"
    }
  }
}
 

QueryCurrentPlanResponse is the response type for the Query/CurrentPlan RPC method.

Properties

NameTypeRequiredRestrictionsDescription
planobjectfalsenoneplan is the current upgrade plan.
» namestringfalsenoneSets the name for the upgrade. This name will be used by the upgradedversion of the software to apply any special "on-upgrade" commands duringthe first BeginBlock method after the upgrade is applied. It is also usedto detect whether a software version can handle a given upgrade. If noupgrade handler with this name has been set in the software, it will beassumed that the software is out-of-date when the upgrade Time or Height isreached and the software will exit.
» timestring(date-time)falsenoneDeprecated: Time based upgrades have been deprecated. Time based upgrade logichas been removed from the SDK.If this field is not empty, an error will be thrown.
» heightstring(int64)falsenoneThe height at which the upgrade must be performed.
» infostringfalsenonenone
» upgraded_client_stateobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.

cosmos.upgrade.v1beta1.QueryModuleVersionsResponse

{
  "module_versions": [
    {
      "name": "string",
      "version": "string"
    }
  ]
}
 

QueryModuleVersionsResponse is the response type for the Query/ModuleVersions RPC method.

Since: cosmos-sdk 0.43

Properties

NameTypeRequiredRestrictionsDescription
module_versions[object]falsenonemodule_versions is a list of module names with their consensus versions.
» namestringfalsenonenone
» versionstring(uint64)falsenonenone

cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateResponse

{
  "upgraded_consensus_state": "string"
}
 

QueryUpgradedConsensusStateResponse is the response type for the Query/UpgradedConsensusState RPC method.

Properties

NameTypeRequiredRestrictionsDescription
upgraded_consensus_statestring(byte)falsenonenone

cosmos.base.tendermint.v1beta1.ABCIQueryResponse

{
  "code": 0,
  "log": "string",
  "info": "string",
  "index": "string",
  "key": "string",
  "value": "string",
  "proof_ops": {
    "ops": [
      {
        "type": "string",
        "key": "string",
        "data": "string"
      }
    ]
  },
  "height": "string",
  "codespace": "string"
}
 

ABCIQueryResponse defines the response structure for the ABCIQuery gRPC query.

Note: This type is a duplicate of the ResponseQuery proto type defined in Tendermint.

Properties

NameTypeRequiredRestrictionsDescription
codeinteger(int64)falsenonenone
logstringfalsenonenone
infostringfalsenonenone
indexstring(int64)falsenonenone
keystring(byte)falsenonenone
valuestring(byte)falsenonenone
proof_opsobjectfalsenoneProofOps is Merkle proof defined by the list of ProofOps.Note: This type is a duplicate of the ProofOps proto type defined in Tendermint.
» ops[object]falsenonenone
»» typestringfalsenonenone
»» keystring(byte)falsenonenone
»» datastring(byte)falsenonenone
heightstring(int64)falsenonenone
codespacestringfalsenonenone

cosmos.base.tendermint.v1beta1.Block

{
  "header": {
    "version": {
      "block": "string",
      "app": "string"
    },
    "chain_id": "string",
    "height": "string",
    "time": "2019-08-24T14:15:22Z",
    "last_block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "last_commit_hash": "string",
    "data_hash": "string",
    "validators_hash": "string",
    "next_validators_hash": "string",
    "consensus_hash": "string",
    "app_hash": "string",
    "last_results_hash": "string",
    "evidence_hash": "string",
    "proposer_address": "string"
  },
  "data": {
    "txs": [
      "string"
    ]
  },
  "evidence": {
    "evidence": [
      {
        "duplicate_vote_evidence": {
          "vote_a": {},
          "vote_b": {},
          "total_voting_power": "string",
          "validator_power": "string",
          "timestamp": "2019-08-24T14:15:22Z"
        },
        "light_client_attack_evidence": {
          "conflicting_block": {},
          "common_height": "string",
          "byzantine_validators": [
            null
          ],
          "total_voting_power": "string",
          "timestamp": "2019-08-24T14:15:22Z"
        }
      }
    ]
  },
  "last_commit": {
    "height": "string",
    "round": 0,
    "block_id": {
      "hash": "string",
      "part_set_header": {
        "total": 0,
        "hash": "string"
      }
    },
    "signatures": [
      {
        "block_id_flag": "BLOCK_ID_FLAG_UNKNOWN",
        "validator_address": "string",
        "timestamp": "2019-08-24T14:15:22Z",
        "signature": "string"
      }
    ]
  }
}
 

Block is tendermint type Block, with the Header proposer address field converted to bech32 string.

Properties

NameTypeRequiredRestrictionsDescription
headerobjectfalsenoneHeader defines the structure of a Tendermint block header.
» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»» blockstring(uint64)falsenonenone
»» appstring(uint64)falsenonenone
» chain_idstringfalsenonenone
» heightstring(int64)falsenonenone
» timestring(date-time)falsenonenone
» last_block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» last_commit_hashstring(byte)falsenonenone
» data_hashstring(byte)falsenonenone
» validators_hashstring(byte)falsenonenone
» next_validators_hashstring(byte)falsenonenone
» consensus_hashstring(byte)falsenonenone
» app_hashstring(byte)falsenonenone
» last_results_hashstring(byte)falsenonenone
» evidence_hashstring(byte)falsenonenone
» proposer_addressstringfalsenoneproposer_address is the original block proposer address, formatted as a Bech32 string.In Tendermint, this type is bytes, but in the SDK, we convert it to a Bech32 stringfor better UX.
dataobjectfalsenonenone
» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
evidenceobjectfalsenonenone
» evidence[object]falsenonenone
»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»» heightstring(int64)falsenonenone
»»»» roundinteger(int32)falsenonenone
»»»» block_idobjectfalsenonenone
»»»»» hashstring(byte)falsenonenone
»»»»» part_set_headerobjectfalsenonenone
»»»»»» totalinteger(int64)falsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» validator_indexinteger(int32)falsenonenone
»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»» heightstring(int64)falsenonenone
»»»» roundinteger(int32)falsenonenone
»»»» block_idobjectfalsenonenone
»»»»» hashstring(byte)falsenonenone
»»»»» part_set_headerobjectfalsenonenone
»»»»»» totalinteger(int64)falsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»»» validator_addressstring(byte)falsenonenone
»»»» validator_indexinteger(int32)falsenonenone
»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»» total_voting_powerstring(int64)falsenonenone
»»» validator_powerstring(int64)falsenonenone
»»» timestampstring(date-time)falsenonenone
»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»» conflicting_blockobjectfalsenonenone
»»»» signed_headerobjectfalsenonenone
»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»» blockstring(uint64)falsenonenone
»»»»»»» appstring(uint64)falsenonenone
»»»»»» chain_idstringfalsenonenone
»»»»»» heightstring(int64)falsenonenone
»»»»»» timestring(date-time)falsenonenone
»»»»»» last_block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»» data_hashstring(byte)falsenonenone
»»»»»» validators_hashstring(byte)falsenonenone
»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»» app_hashstring(byte)falsenonenone
»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»» proposer_addressstring(byte)falsenonenone
»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»» heightstring(int64)falsenonenone
»»»»»» roundinteger(int32)falsenonenone
»»»»»» block_idobjectfalsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»» signatures[object]falsenonenone
»»»»»»» block_id_flagstringfalsenonenone
»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»» signaturestring(byte)falsenonenone
»»»» validator_setobjectfalsenonenone
»»»»» validators[object]falsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» proposerobjectfalsenonenone
»»»»»» addressstring(byte)falsenonenone
»»»»»» pub_keyobjectfalsenonenone
»»»»»»» ed25519string(byte)falsenonenone
»»»»»»» secp256k1string(byte)falsenonenone
»»»»»» voting_powerstring(int64)falsenonenone
»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»» total_voting_powerstring(int64)falsenonenone
»»» common_heightstring(int64)falsenonenone
»»» byzantine_validators[object]falsenonenone
»»»» addressstring(byte)falsenonenone
»»»» pub_keyobjectfalsenonenone
»»»»» ed25519string(byte)falsenonenone
»»»»» secp256k1string(byte)falsenonenone
»»»» voting_powerstring(int64)falsenonenone
»»»» proposer_prioritystring(int64)falsenonenone
»»» total_voting_powerstring(int64)falsenonenone
»»» timestampstring(date-time)falsenonenone
last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
» heightstring(int64)falsenonenone
» roundinteger(int32)falsenonenone
» block_idobjectfalsenonenone
»» hashstring(byte)falsenonenone
»» part_set_headerobjectfalsenonenone
»»» totalinteger(int64)falsenonenone
»»» hashstring(byte)falsenonenone
» signatures[object]falsenonenone
»» block_id_flagstringfalsenonenone
»» validator_addressstring(byte)falsenonenone
»» timestampstring(date-time)falsenonenone
»» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

cosmos.base.tendermint.v1beta1.GetBlockByHeightResponse

{
  "block_id": {
    "hash": "string",
    "part_set_header": {
      "total": 0,
      "hash": "string"
    }
  },
  "block": {
    "header": {
      "version": {
        "block": "string",
        "app": "string"
      },
      "chain_id": "string",
      "height": "string",
      "time": "2019-08-24T14:15:22Z",
      "last_block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "last_commit_hash": "string",
      "data_hash": "string",
      "validators_hash": "string",
      "next_validators_hash": "string",
      "consensus_hash": "string",
      "app_hash": "string",
      "last_results_hash": "string",
      "evidence_hash": "string",
      "proposer_address": "string"
    },
    "data": {
      "txs": [
        "string"
      ]
    },
    "evidence": {
      "evidence": [
        {
          "duplicate_vote_evidence": {},
          "light_client_attack_evidence": {}
        }
      ]
    },
    "last_commit": {
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "signatures": [
        {
          "block_id_flag": "[",
          "validator_address": "string",
          "timestamp": "2019-08-24T14:15:22Z",
          "signature": "string"
        }
      ]
    }
  },
  "sdk_block": {
    "header": {
      "version": {
        "block": "string",
        "app": "string"
      },
      "chain_id": "string",
      "height": "string",
      "time": "2019-08-24T14:15:22Z",
      "last_block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "last_commit_hash": "string",
      "data_hash": "string",
      "validators_hash": "string",
      "next_validators_hash": "string",
      "consensus_hash": "string",
      "app_hash": "string",
      "last_results_hash": "string",
      "evidence_hash": "string",
      "proposer_address": "string"
    },
    "data": {
      "txs": [
        "string"
      ]
    },
    "evidence": {
      "evidence": [
        {
          "duplicate_vote_evidence": {},
          "light_client_attack_evidence": {}
        }
      ]
    },
    "last_commit": {
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "signatures": [
        {
          "block_id_flag": "[",
          "validator_address": "string",
          "timestamp": "2019-08-24T14:15:22Z",
          "signature": "string"
        }
      ]
    }
  }
}
 

GetBlockByHeightResponse is the response type for the Query/GetBlockByHeight RPC method.

Properties

NameTypeRequiredRestrictionsDescription
block_idobjectfalsenonenone
» hashstring(byte)falsenonenone
» part_set_headerobjectfalsenonenone
»» totalinteger(int64)falsenonenone
»» hashstring(byte)falsenonenone
blockobjectfalsenonenone
» headerobjectfalsenoneHeader defines the structure of a block header.
»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» chain_idstringfalsenonenone
»» heightstring(int64)falsenonenone
»» timestring(date-time)falsenonenone
»» last_block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» last_commit_hashstring(byte)falsenonenone
»» data_hashstring(byte)falsenonenone
»» validators_hashstring(byte)falsenonenone
»» next_validators_hashstring(byte)falsenonenone
»» consensus_hashstring(byte)falsenonenone
»» app_hashstring(byte)falsenonenone
»» last_results_hashstring(byte)falsenonenone
»» evidence_hashstring(byte)falsenonenone
»» proposer_addressstring(byte)falsenonenone
» dataobjectfalsenonenone
»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
» evidenceobjectfalsenonenone
»» evidence[object]falsenonenone
»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» total_voting_powerstring(int64)falsenonenone
»»»» validator_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»» conflicting_blockobjectfalsenonenone
»»»»» signed_headerobjectfalsenonenone
»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»» appstring(uint64)falsenonenone
»»»»»»» chain_idstringfalsenonenone
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» timestring(date-time)falsenonenone
»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» roundinteger(int32)falsenonenone
»»»»»»» block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» signatures[object]falsenonenone
»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»» signaturestring(byte)falsenonenone
»»»»» validator_setobjectfalsenonenone
»»»»»» validators[object]falsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» proposerobjectfalsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» total_voting_powerstring(int64)falsenonenone
»»»» common_heightstring(int64)falsenonenone
»»»» byzantine_validators[object]falsenonenone
»»»»» addressstring(byte)falsenonenone
»»»»» pub_keyobjectfalsenonenone
»»»»»» ed25519string(byte)falsenonenone
»»»»»» secp256k1string(byte)falsenonenone
»»»»» voting_powerstring(int64)falsenonenone
»»»»» proposer_prioritystring(int64)falsenonenone
»»»» total_voting_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» signatures[object]falsenonenone
»»» block_id_flagstringfalsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» signaturestring(byte)falsenonenone
sdk_blockobjectfalsenoneBlock is tendermint type Block, with the Header proposer addressfield converted to bech32 string.
» headerobjectfalsenoneHeader defines the structure of a Tendermint block header.
»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» chain_idstringfalsenonenone
»» heightstring(int64)falsenonenone
»» timestring(date-time)falsenonenone
»» last_block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» last_commit_hashstring(byte)falsenonenone
»» data_hashstring(byte)falsenonenone
»» validators_hashstring(byte)falsenonenone
»» next_validators_hashstring(byte)falsenonenone
»» consensus_hashstring(byte)falsenonenone
»» app_hashstring(byte)falsenonenone
»» last_results_hashstring(byte)falsenonenone
»» evidence_hashstring(byte)falsenonenone
»» proposer_addressstringfalsenoneproposer_address is the original block proposer address, formatted as a Bech32 string.In Tendermint, this type is bytes, but in the SDK, we convert it to a Bech32 stringfor better UX.
» dataobjectfalsenonenone
»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
» evidenceobjectfalsenonenone
»» evidence[object]falsenonenone
»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» total_voting_powerstring(int64)falsenonenone
»»»» validator_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»» conflicting_blockobjectfalsenonenone
»»»»» signed_headerobjectfalsenonenone
»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»» appstring(uint64)falsenonenone
»»»»»»» chain_idstringfalsenonenone
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» timestring(date-time)falsenonenone
»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» roundinteger(int32)falsenonenone
»»»»»»» block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» signatures[object]falsenonenone
»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»» signaturestring(byte)falsenonenone
»»»»» validator_setobjectfalsenonenone
»»»»»» validators[object]falsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» proposerobjectfalsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» total_voting_powerstring(int64)falsenonenone
»»»» common_heightstring(int64)falsenonenone
»»»» byzantine_validators[object]falsenonenone
»»»»» addressstring(byte)falsenonenone
»»»»» pub_keyobjectfalsenonenone
»»»»»» ed25519string(byte)falsenonenone
»»»»»» secp256k1string(byte)falsenonenone
»»»»» voting_powerstring(int64)falsenonenone
»»»»» proposer_prioritystring(int64)falsenonenone
»»»» total_voting_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» signatures[object]falsenonenone
»»» block_id_flagstringfalsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

cosmos.base.tendermint.v1beta1.GetLatestBlockResponse

{
  "block_id": {
    "hash": "string",
    "part_set_header": {
      "total": 0,
      "hash": "string"
    }
  },
  "block": {
    "header": {
      "version": {
        "block": "string",
        "app": "string"
      },
      "chain_id": "string",
      "height": "string",
      "time": "2019-08-24T14:15:22Z",
      "last_block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "last_commit_hash": "string",
      "data_hash": "string",
      "validators_hash": "string",
      "next_validators_hash": "string",
      "consensus_hash": "string",
      "app_hash": "string",
      "last_results_hash": "string",
      "evidence_hash": "string",
      "proposer_address": "string"
    },
    "data": {
      "txs": [
        "string"
      ]
    },
    "evidence": {
      "evidence": [
        {
          "duplicate_vote_evidence": {},
          "light_client_attack_evidence": {}
        }
      ]
    },
    "last_commit": {
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "signatures": [
        {
          "block_id_flag": "[",
          "validator_address": "string",
          "timestamp": "2019-08-24T14:15:22Z",
          "signature": "string"
        }
      ]
    }
  },
  "sdk_block": {
    "header": {
      "version": {
        "block": "string",
        "app": "string"
      },
      "chain_id": "string",
      "height": "string",
      "time": "2019-08-24T14:15:22Z",
      "last_block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "last_commit_hash": "string",
      "data_hash": "string",
      "validators_hash": "string",
      "next_validators_hash": "string",
      "consensus_hash": "string",
      "app_hash": "string",
      "last_results_hash": "string",
      "evidence_hash": "string",
      "proposer_address": "string"
    },
    "data": {
      "txs": [
        "string"
      ]
    },
    "evidence": {
      "evidence": [
        {
          "duplicate_vote_evidence": {},
          "light_client_attack_evidence": {}
        }
      ]
    },
    "last_commit": {
      "height": "string",
      "round": 0,
      "block_id": {
        "hash": "string",
        "part_set_header": {
          "total": null,
          "hash": null
        }
      },
      "signatures": [
        {
          "block_id_flag": "[",
          "validator_address": "string",
          "timestamp": "2019-08-24T14:15:22Z",
          "signature": "string"
        }
      ]
    }
  }
}
 

GetLatestBlockResponse is the response type for the Query/GetLatestBlock RPC method.

Properties

NameTypeRequiredRestrictionsDescription
block_idobjectfalsenonenone
» hashstring(byte)falsenonenone
» part_set_headerobjectfalsenonenone
»» totalinteger(int64)falsenonenone
»» hashstring(byte)falsenonenone
blockobjectfalsenonenone
» headerobjectfalsenoneHeader defines the structure of a block header.
»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» chain_idstringfalsenonenone
»» heightstring(int64)falsenonenone
»» timestring(date-time)falsenonenone
»» last_block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» last_commit_hashstring(byte)falsenonenone
»» data_hashstring(byte)falsenonenone
»» validators_hashstring(byte)falsenonenone
»» next_validators_hashstring(byte)falsenonenone
»» consensus_hashstring(byte)falsenonenone
»» app_hashstring(byte)falsenonenone
»» last_results_hashstring(byte)falsenonenone
»» evidence_hashstring(byte)falsenonenone
»» proposer_addressstring(byte)falsenonenone
» dataobjectfalsenonenone
»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
» evidenceobjectfalsenonenone
»» evidence[object]falsenonenone
»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» total_voting_powerstring(int64)falsenonenone
»»»» validator_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»» conflicting_blockobjectfalsenonenone
»»»»» signed_headerobjectfalsenonenone
»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»» appstring(uint64)falsenonenone
»»»»»»» chain_idstringfalsenonenone
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» timestring(date-time)falsenonenone
»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» roundinteger(int32)falsenonenone
»»»»»»» block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» signatures[object]falsenonenone
»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»» signaturestring(byte)falsenonenone
»»»»» validator_setobjectfalsenonenone
»»»»»» validators[object]falsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» proposerobjectfalsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» total_voting_powerstring(int64)falsenonenone
»»»» common_heightstring(int64)falsenonenone
»»»» byzantine_validators[object]falsenonenone
»»»»» addressstring(byte)falsenonenone
»»»»» pub_keyobjectfalsenonenone
»»»»»» ed25519string(byte)falsenonenone
»»»»»» secp256k1string(byte)falsenonenone
»»»»» voting_powerstring(int64)falsenonenone
»»»»» proposer_prioritystring(int64)falsenonenone
»»»» total_voting_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» signatures[object]falsenonenone
»»» block_id_flagstringfalsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» signaturestring(byte)falsenonenone
sdk_blockobjectfalsenoneBlock is tendermint type Block, with the Header proposer addressfield converted to bech32 string.
» headerobjectfalsenoneHeader defines the structure of a Tendermint block header.
»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»» blockstring(uint64)falsenonenone
»»» appstring(uint64)falsenonenone
»» chain_idstringfalsenonenone
»» heightstring(int64)falsenonenone
»» timestring(date-time)falsenonenone
»» last_block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» last_commit_hashstring(byte)falsenonenone
»» data_hashstring(byte)falsenonenone
»» validators_hashstring(byte)falsenonenone
»» next_validators_hashstring(byte)falsenonenone
»» consensus_hashstring(byte)falsenonenone
»» app_hashstring(byte)falsenonenone
»» last_results_hashstring(byte)falsenonenone
»» evidence_hashstring(byte)falsenonenone
»» proposer_addressstringfalsenoneproposer_address is the original block proposer address, formatted as a Bech32 string.In Tendermint, this type is bytes, but in the SDK, we convert it to a Bech32 stringfor better UX.
» dataobjectfalsenonenone
»» txs[string]falsenoneTxs that will be applied by state @ block.Height+1.NOTE: not all txs here are valid. We're just agreeing on the order first.This means that block.AppHash does not include these txs.
» evidenceobjectfalsenonenone
»» evidence[object]falsenonenone
»»» duplicate_vote_evidenceobjectfalsenoneDuplicateVoteEvidence contains evidence of a validator signed two conflicting votes.
»»»» vote_aobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» vote_bobjectfalsenoneVote represents a prevote or precommit vote from validators forconsensus.
»»»»» typestringfalsenoneSignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals
»»»»» heightstring(int64)falsenonenone
»»»»» roundinteger(int32)falsenonenone
»»»»» block_idobjectfalsenonenone
»»»»»» hashstring(byte)falsenonenone
»»»»»» part_set_headerobjectfalsenonenone
»»»»»»» totalinteger(int64)falsenonenone
»»»»»»» hashstring(byte)falsenonenone
»»»»» timestampstring(date-time)falsenonenone
»»»»» validator_addressstring(byte)falsenonenone
»»»»» validator_indexinteger(int32)falsenonenone
»»»»» signaturestring(byte)falsenoneVote signature by the validator if they participated in consensus for theassociated block.
»»»»» extensionstring(byte)falsenoneVote extension provided by the application. Only valid for precommitmessages.
»»»»» extension_signaturestring(byte)falsenoneVote extension signature by the validator if they participated inconsensus for the associated block.Only valid for precommit messages.
»»»» total_voting_powerstring(int64)falsenonenone
»»»» validator_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
»»» light_client_attack_evidenceobjectfalsenoneLightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client.
»»»» conflicting_blockobjectfalsenonenone
»»»»» signed_headerobjectfalsenonenone
»»»»»» headerobjectfalsenoneHeader defines the structure of a block header.
»»»»»»» versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
»»»»»»»» blockstring(uint64)falsenonenone
»»»»»»»» appstring(uint64)falsenonenone
»»»»»»» chain_idstringfalsenonenone
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» timestring(date-time)falsenonenone
»»»»»»» last_block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» last_commit_hashstring(byte)falsenonenone
»»»»»»» data_hashstring(byte)falsenonenone
»»»»»»» validators_hashstring(byte)falsenonenone
»»»»»»» next_validators_hashstring(byte)falsenonenone
»»»»»»» consensus_hashstring(byte)falsenonenone
»»»»»»» app_hashstring(byte)falsenonenone
»»»»»»» last_results_hashstring(byte)falsenonenone
»»»»»»» evidence_hashstring(byte)falsenonenone
»»»»»»» proposer_addressstring(byte)falsenonenone
»»»»»» commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»»»»»»» heightstring(int64)falsenonenone
»»»»»»» roundinteger(int32)falsenonenone
»»»»»»» block_idobjectfalsenonenone
»»»»»»»» hashstring(byte)falsenonenone
»»»»»»»» part_set_headerobjectfalsenonenone
»»»»»»»»» totalinteger(int64)falsenonenone
»»»»»»»»» hashstring(byte)falsenonenone
»»»»»»» signatures[object]falsenonenone
»»»»»»»» block_id_flagstringfalsenonenone
»»»»»»»» validator_addressstring(byte)falsenonenone
»»»»»»»» timestampstring(date-time)falsenonenone
»»»»»»»» signaturestring(byte)falsenonenone
»»»»» validator_setobjectfalsenonenone
»»»»»» validators[object]falsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» proposerobjectfalsenonenone
»»»»»»» addressstring(byte)falsenonenone
»»»»»»» pub_keyobjectfalsenonenone
»»»»»»»» ed25519string(byte)falsenonenone
»»»»»»»» secp256k1string(byte)falsenonenone
»»»»»»» voting_powerstring(int64)falsenonenone
»»»»»»» proposer_prioritystring(int64)falsenonenone
»»»»»» total_voting_powerstring(int64)falsenonenone
»»»» common_heightstring(int64)falsenonenone
»»»» byzantine_validators[object]falsenonenone
»»»»» addressstring(byte)falsenonenone
»»»»» pub_keyobjectfalsenonenone
»»»»»» ed25519string(byte)falsenonenone
»»»»»» secp256k1string(byte)falsenonenone
»»»»» voting_powerstring(int64)falsenonenone
»»»»» proposer_prioritystring(int64)falsenonenone
»»»» total_voting_powerstring(int64)falsenonenone
»»»» timestampstring(date-time)falsenonenone
» last_commitobjectfalsenoneCommit contains the evidence that a block was committed by a set of validators.
»» heightstring(int64)falsenonenone
»» roundinteger(int32)falsenonenone
»» block_idobjectfalsenonenone
»»» hashstring(byte)falsenonenone
»»» part_set_headerobjectfalsenonenone
»»»» totalinteger(int64)falsenonenone
»»»» hashstring(byte)falsenonenone
»» signatures[object]falsenonenone
»»» block_id_flagstringfalsenonenone
»»» validator_addressstring(byte)falsenonenone
»»» timestampstring(date-time)falsenonenone
»»» signaturestring(byte)falsenonenone

Enumerated Values

PropertyValue
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
typeSIGNED_MSG_TYPE_UNKNOWN
typeSIGNED_MSG_TYPE_PREVOTE
typeSIGNED_MSG_TYPE_PRECOMMIT
typeSIGNED_MSG_TYPE_PROPOSAL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL
block_id_flagBLOCK_ID_FLAG_UNKNOWN
block_id_flagBLOCK_ID_FLAG_ABSENT
block_id_flagBLOCK_ID_FLAG_COMMIT
block_id_flagBLOCK_ID_FLAG_NIL

cosmos.base.tendermint.v1beta1.GetLatestValidatorSetResponse

{
  "block_height": "string",
  "validators": [
    {
      "address": "string",
      "pub_key": {
        "type_url": "string",
        "value": "string"
      },
      "voting_power": "string",
      "proposer_priority": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

GetLatestValidatorSetResponse is the response type for the Query/GetValidatorSetByHeight RPC method.

Properties

NameTypeRequiredRestrictionsDescription
block_heightstring(int64)falsenonenone
validators[object]falsenonenone
» addressstringfalsenonenone
» pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» voting_powerstring(int64)falsenonenone
» proposer_prioritystring(int64)falsenonenone
paginationobjectfalsenonepagination defines an pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.base.tendermint.v1beta1.GetNodeInfoResponse

{
  "default_node_info": {
    "protocol_version": {
      "p2p": "string",
      "block": "string",
      "app": "string"
    },
    "default_node_id": "string",
    "listen_addr": "string",
    "network": "string",
    "version": "string",
    "channels": "string",
    "moniker": "string",
    "other": {
      "tx_index": "string",
      "rpc_address": "string"
    }
  },
  "application_version": {
    "name": "string",
    "app_name": "string",
    "version": "string",
    "git_commit": "string",
    "build_tags": "string",
    "go_version": "string",
    "build_deps": [
      {
        "path": "string",
        "version": "string",
        "sum": "string"
      }
    ],
    "cosmos_sdk_version": "string"
  }
}
 

GetNodeInfoResponse is the response type for the Query/GetNodeInfo RPC method.

Properties

NameTypeRequiredRestrictionsDescription
default_node_infoobjectfalsenonenone
» protocol_versionobjectfalsenonenone
»» p2pstring(uint64)falsenonenone
»» blockstring(uint64)falsenonenone
»» appstring(uint64)falsenonenone
» default_node_idstringfalsenonenone
» listen_addrstringfalsenonenone
» networkstringfalsenonenone
» versionstringfalsenonenone
» channelsstring(byte)falsenonenone
» monikerstringfalsenonenone
» otherobjectfalsenonenone
»» tx_indexstringfalsenonenone
»» rpc_addressstringfalsenonenone
application_versionobjectfalsenoneVersionInfo is the type for the GetNodeInfoResponse message.
» namestringfalsenonenone
» app_namestringfalsenonenone
» versionstringfalsenonenone
» git_commitstringfalsenonenone
» build_tagsstringfalsenonenone
» go_versionstringfalsenonenone
» build_deps[object]falsenonenone
»» Module is the type for VersionInfoobjectfalsenonenone
»»» pathstringfalsenonenone
»»» versionstringfalsenonenone
»»» sumstringfalsenonenone
» cosmos_sdk_versionstringfalsenonenone

cosmos.base.tendermint.v1beta1.GetSyncingResponse

{
  "syncing": true
}
 

GetSyncingResponse is the response type for the Query/GetSyncing RPC method.

Properties

NameTypeRequiredRestrictionsDescription
syncingbooleanfalsenonenone

cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightResponse

{
  "block_height": "string",
  "validators": [
    {
      "address": "string",
      "pub_key": {
        "type_url": "string",
        "value": "string"
      },
      "voting_power": "string",
      "proposer_priority": "string"
    }
  ],
  "pagination": {
    "next_key": "string",
    "total": "string"
  }
}
 

GetValidatorSetByHeightResponse is the response type for the Query/GetValidatorSetByHeight RPC method.

Properties

NameTypeRequiredRestrictionsDescription
block_heightstring(int64)falsenonenone
validators[object]falsenonenone
» addressstringfalsenonenone
» pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
»» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
»» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
» voting_powerstring(int64)falsenonenone
» proposer_prioritystring(int64)falsenonenone
paginationobjectfalsenonepagination defines an pagination for the response.
» next_keystring(byte)falsenonenext_key is the key to be passed to PageRequest.key toquery the next page most efficiently. It will be empty ifthere are no more results.
» totalstring(uint64)falsenonenone

cosmos.base.tendermint.v1beta1.Header

{
  "version": {
    "block": "string",
    "app": "string"
  },
  "chain_id": "string",
  "height": "string",
  "time": "2019-08-24T14:15:22Z",
  "last_block_id": {
    "hash": "string",
    "part_set_header": {
      "total": 0,
      "hash": "string"
    }
  },
  "last_commit_hash": "string",
  "data_hash": "string",
  "validators_hash": "string",
  "next_validators_hash": "string",
  "consensus_hash": "string",
  "app_hash": "string",
  "last_results_hash": "string",
  "evidence_hash": "string",
  "proposer_address": "string"
}
 

Header defines the structure of a Tendermint block header.

Properties

NameTypeRequiredRestrictionsDescription
versionobjectfalsenoneConsensus captures the consensus rules for processing a block in the blockchain,including all blockchain data structures and the rules of the application'sstate transition machine.
» blockstring(uint64)falsenonenone
» appstring(uint64)falsenonenone
chain_idstringfalsenonenone
heightstring(int64)falsenonenone
timestring(date-time)falsenonenone
last_block_idobjectfalsenonenone
» hashstring(byte)falsenonenone
» part_set_headerobjectfalsenonenone
»» totalinteger(int64)falsenonenone
»» hashstring(byte)falsenonenone
last_commit_hashstring(byte)falsenonenone
data_hashstring(byte)falsenonenone
validators_hashstring(byte)falsenonenone
next_validators_hashstring(byte)falsenonenone
consensus_hashstring(byte)falsenonenone
app_hashstring(byte)falsenonenone
last_results_hashstring(byte)falsenonenone
evidence_hashstring(byte)falsenonenone
proposer_addressstringfalsenoneproposer_address is the original block proposer address, formatted as a Bech32 string.In Tendermint, this type is bytes, but in the SDK, we convert it to a Bech32 stringfor better UX.

cosmos.base.tendermint.v1beta1.Module

{
  "path": "string",
  "version": "string",
  "sum": "string"
}
 

Module is the type for VersionInfo

Properties

NameTypeRequiredRestrictionsDescription
pathstringfalsenonenone
versionstringfalsenonenone
sumstringfalsenonenone

cosmos.base.tendermint.v1beta1.ProofOp

{
  "type": "string",
  "key": "string",
  "data": "string"
}
 

ProofOp defines an operation used for calculating Merkle root. The data could be arbitrary format, providing necessary data for example neighbouring node hash.

Note: This type is a duplicate of the ProofOp proto type defined in Tendermint.

Properties

NameTypeRequiredRestrictionsDescription
typestringfalsenonenone
keystring(byte)falsenonenone
datastring(byte)falsenonenone

cosmos.base.tendermint.v1beta1.ProofOps

{
  "ops": [
    {
      "type": "string",
      "key": "string",
      "data": "string"
    }
  ]
}
 

ProofOps is Merkle proof defined by the list of ProofOps.

Note: This type is a duplicate of the ProofOps proto type defined in Tendermint.

Properties

NameTypeRequiredRestrictionsDescription
ops[object]falsenonenone
» typestringfalsenonenone
» keystring(byte)falsenonenone
» datastring(byte)falsenonenone

cosmos.base.tendermint.v1beta1.Validator

{
  "address": "string",
  "pub_key": {
    "type_url": "string",
    "value": "string"
  },
  "voting_power": "string",
  "proposer_priority": "string"
}
 

Validator is the type for the validator-set.

Properties

NameTypeRequiredRestrictionsDescription
addressstringfalsenonenone
pub_keyobjectfalsenoneAny contains an arbitrary serialized protocol buffer message along with aURL that describes the type of the serialized message.Protobuf library provides support to pack/unpack Any values in the formof utility functions or additional generated methods of the Any type.Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... }The pack methods provided by protobuf library will by default use'type.googleapis.com/full.type.name' as the type URL and the unpackmethods only use the fully qualified type name after the last '/'in the type URL, for example "foo.bar.com/x/y.z" will yield typename "y.z".JSONThe JSON representation of an Any value uses the regularrepresentation of the deserialized, embedded message, with anadditional field @type which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": }If the embedded message type is well-known and has a custom JSONrepresentation, that representation will be embedded adding a fieldvalue which holds the custom JSON in addition to the @typefield. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }
» type_urlstringfalsenoneA URL/resource name that uniquely identifies the type of the serializedprotocol buffer message. This string must contain at leastone "/" character. The last segment of the URL's path must representthe fully qualified name of the type (as inpath/google.protobuf.Duration). The name should be in a canonical form(e.g., leading "." is not accepted).In practice, teams usually precompile into the binary all types that theyexpect it to use in the context of Any. However, for URLs which use thescheme http, https, or no scheme, one can optionally set up a typeserver that maps type URLs to message definitions as follows:* If no scheme is provided, https is assumed.* An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error.* Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)Note: this functionality is not currently available in the officialprotobuf release, and it is not used for type URLs beginning withtype.googleapis.com.Schemes other than http, https (or the empty scheme) might beused with implementation specific semantics.
» valuestring(byte)falsenoneMust be a valid serialized protocol buffer of the above specified type.
voting_powerstring(int64)falsenonenone
proposer_prioritystring(int64)falsenonenone

cosmos.base.tendermint.v1beta1.VersionInfo

{
  "name": "string",
  "app_name": "string",
  "version": "string",
  "git_commit": "string",
  "build_tags": "string",
  "go_version": "string",
  "build_deps": [
    {
      "path": "string",
      "version": "string",
      "sum": "string"
    }
  ],
  "cosmos_sdk_version": "string"
}
 

VersionInfo is the type for the GetNodeInfoResponse message.

Properties

NameTypeRequiredRestrictionsDescription
namestringfalsenonenone
app_namestringfalsenonenone
versionstringfalsenonenone
git_commitstringfalsenonenone
build_tagsstringfalsenonenone
go_versionstringfalsenonenone
build_deps[object]falsenonenone
» Module is the type for VersionInfoobjectfalsenonenone
»» pathstringfalsenonenone
»» versionstringfalsenonenone
»» sumstringfalsenonenone
cosmos_sdk_versionstringfalsenonenone

tendermint.p2p.DefaultNodeInfo

{
  "protocol_version": {
    "p2p": "string",
    "block": "string",
    "app": "string"
  },
  "default_node_id": "string",
  "listen_addr": "string",
  "network": "string",
  "version": "string",
  "channels": "string",
  "moniker": "string",
  "other": {
    "tx_index": "string",
    "rpc_address": "string"
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
protocol_versionobjectfalsenonenone
» p2pstring(uint64)falsenonenone
» blockstring(uint64)falsenonenone
» appstring(uint64)falsenonenone
default_node_idstringfalsenonenone
listen_addrstringfalsenonenone
networkstringfalsenonenone
versionstringfalsenonenone
channelsstring(byte)falsenonenone
monikerstringfalsenonenone
otherobjectfalsenonenone
» tx_indexstringfalsenonenone
» rpc_addressstringfalsenonenone

tendermint.p2p.DefaultNodeInfoOther

{
  "tx_index": "string",
  "rpc_address": "string"
}
 

Properties

NameTypeRequiredRestrictionsDescription
tx_indexstringfalsenonenone
rpc_addressstringfalsenonenone

tendermint.p2p.ProtocolVersion

{
  "p2p": "string",
  "block": "string",
  "app": "string"
}
 

Properties

NameTypeRequiredRestrictionsDescription
p2pstring(uint64)falsenonenone
blockstring(uint64)falsenonenone
appstring(uint64)falsenonenone