Twilight Chain API
The Nyks Chain exposes a Cosmos SDK LCD (Light Client Daemon) REST API. Use it to query on-chain state, simulate and broadcast transactions, and interact with Twilight-specific modules (bridge, fork, volt, zkOS protocol). All endpoints follow REST conventions; no authentication required for public queries.
Base URL: https://lcd.twilight.org
Navigate to another section: Home · zkOS RPC · Indexer API · Full Reference
Nyks Zkos Module
The zkOS chain module stores the on-chain record of zero-knowledge transactions. Use these LCD endpoints to query mint/burn trading BTC operations, module parameters, and transfer transaction records. For submitting zkOS transactions or querying UTXOs, use the zkOS RPC API instead.
Base URL: https://lcd.twilight.org
No authentication required.
Endpoints
Mint or Burn Trading BTC
curl -X GET https://lcd.twilight.org/twilight-project/nyks/zkos/mint_or_burn_trading_btc/{twilightAddress} \
-H 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/zkos/mint_or_burn_trading_btc/{twilightAddress}');
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"MintOrBurnTradingBtc": [
{
"mintOrBurn": true,
"btcValue": "1000000",
"qqAccount": "qqAccount...",
"encryptScalar": "0xabcdef1234567890...",
"twilightAddress": "twilight1abc123def456..."
}
]
}
GET /twilight-project/nyks/zkos/mint_or_burn_trading_btc/{twilightAddress}
Queries a list of MintOrBurnTradingBtc items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| twilightAddress | path | string | true | The Twilight address to query |
Responses
| Status | Meaning | Description |
|---|---|---|
| 200 | OK | A successful response |
| default | Default | An unexpected error response |
Response Schema (200)
| Name | Type | Required | Description |
|---|---|---|---|
| mintOrBurn | boolean | false | Whether this is a mint or burn operation |
| btcValue | string(uint64) | false | The BTC value |
| qqAccount | string | false | The QQ account address |
| encryptScalar | string | false | The encrypted scalar |
| twilightAddress | string | false | The Twilight address |
This operation does not require authentication
Get ZKOS Parameters
curl -X GET https://lcd.twilight.org/twilight-project/nyks/zkos/params \
-H 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/zkos/params');
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"params": {}
}
GET /twilight-project/nyks/zkos/params
Parameters queries the parameters of the module.
Responses
| Status | Meaning | Description |
|---|---|---|
| 200 | OK | A successful response |
| default | Default | An unexpected error response |
Response Schema (200)
QueryParamsResponse is response type for the Query/Params RPC method.
| Name | Type | Required | Description |
|---|---|---|---|
| params | object | false | params holds all the parameters of this module |
This operation does not require authentication
Get Transfer Transaction
curl -X GET https://lcd.twilight.org/twilight-project/nyks/zkos/transfer_tx/{txId} \
-H 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/zkos/transfer_tx/{txId}');
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"TransferTx": {
"txId": "0x1234567890abcdef...",
"txByteCode": "0x1234567890abcdef...",
"txFee": "1000000",
"zkOracleAddress": "0x1234567890abcdef..."
}
}
GET /twilight-project/nyks/zkos/transfer_tx/{txId}
Queries a list of TransferTx items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| txId | path | string | true | The transaction ID to query |
Responses
| Status | Meaning | Description |
|---|---|---|
| 200 | OK | A successful response |
| default | Default | An unexpected error response |
Response Schema (200)
| Name | Type | Required | Description |
|---|---|---|---|
| txId | string | false | The transaction ID |
| txByteCode | string | false | The transaction bytecode |
| txFee | string(uint64) | false | The transaction fee |
| zkOracleAddress | string | false | The ZK Oracle address |
This operation does not require authentication
Twilight BTC Bridge Module
The Bridge module manages the BTC-Twilight bridge, including deposits, withdrawals, sweep/refund transactions, and reserve management. Validators (judges) coordinate multi-signature Bitcoin transactions to move BTC between the Bitcoin network and Twilight. Key concepts: reserves hold BTC in multi-sig addresses, judges are trusted validators that sign bridge transactions, and sweep rounds periodically consolidate reserve UTXOs.
Base URL: https://lcd.twilight.org
BroadcastTxRefund
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_refund/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_refund/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"broadcastRefundMsg": {
"reserveId": "1000000",
"roundId": "1000000",
"signedRefundTx": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
}
GET /twilight-project/nyks/bridge/broadcast_tx_refund/{reserveId}/{roundId}
Queries a list of BroadcastTxRefund items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » broadcastRefundMsg | object | false | none | none |
| »» reserveId | string(uint64) | false | none | none |
| »» roundId | string(uint64) | false | none | none |
| »» signedRefundTx | string | false | none | none |
| »» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
BroadcastTxRefundAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_refund_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_refund_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"BroadcastTxRefundMsg": [
{
"reserveId": "1000000",
"roundId": "1000000",
"signedRefundTx": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/broadcast_tx_refund_all
Queries a list of BroadcastTxRefundAll items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » BroadcastTxRefundMsg | [object] | false | none | none |
| »» 6. MsgBroadcastTxRefund | object | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» signedRefundTx | string | false | none | none |
| »»» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
BroadcastTxSweep
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_sweep/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_sweep/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"broadcastSweepMsg": {
"reserveId": "1000000",
"roundId": "1000000",
"signedSweepTx": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
}
GET /twilight-project/nyks/bridge/broadcast_tx_sweep/{reserveId}/{roundId}
Queries a list of BroadcastTxSweep items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » broadcastSweepMsg | object | false | none | none |
| »» reserveId | string(uint64) | false | none | none |
| »» roundId | string(uint64) | false | none | none |
| »» signedSweepTx | string | false | none | none |
| »» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
BroadcastTxSweepAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_sweep_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/broadcast_tx_sweep_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"BroadcastTxSweepMsg": [
{
"reserveId": "1000000",
"roundId": "1000000",
"signedSweepTx": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/broadcast_tx_sweep_all
Queries a list of BroadcastTxSweepAll items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » BroadcastTxSweepMsg | [object] | false | none | none |
| »» 7. MsgBroadcastTxSweep | object | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» signedSweepTx | string | false | none | none |
| »»» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"params": {}
}
GET /twilight-project/nyks/bridge/params
Parameters queries the parameters of the module.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params holds all the parameters of this module. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ProposeRefundHashAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/propose_refund_hash_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/propose_refund_hash_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"proposeRefundHashMsg": [
{
"refundHash": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/propose_refund_hash_all
Queries a list of ProposeRefundHashAll items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » proposeRefundHashMsg | [object] | false | none | none |
| »» refundHash | string | false | none | none |
| »» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ProposeSweepAddress
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/propose_sweep_address/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/propose_sweep_address/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"proposeSweepAddressMsg": {
"btcAddress": "0x1234567890abcdef...",
"btcScript": "btcScript...",
"reserveId": "1000000",
"roundId": "1000000",
"judgeAddress": "0x1234567890abcdef..."
}
}
GET /twilight-project/nyks/bridge/propose_sweep_address/{reserveId}/{roundId}
Queries a list of ProposeSweepAddress items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » proposeSweepAddressMsg | object | false | none | none |
| »» btcAddress | string | false | none | none |
| »» btcScript | string | false | none | none |
| »» reserveId | string(uint64) | false | none | none |
| »» roundId | string(uint64) | false | none | none |
| »» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ProposeSweepAddressesAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/propose_sweep_addresses_all/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/propose_sweep_addresses_all/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"proposeSweepAddressMsgs": [
{
"btcAddress": "0x1234567890abcdef...",
"btcScript": "btcScript...",
"reserveId": "1000000",
"roundId": "1000000",
"judgeAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/propose_sweep_addresses_all/{limit}
Queries a list of ProposeSweepAddressesAll items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| limit | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » proposeSweepAddressMsgs | [object] | false | none | none |
| »» Sweep messages in order | ||||
| 1. MsgProposeSweepAddress | object | false | none | none |
| »»» btcAddress | string | false | none | none |
| »»» btcScript | string | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
RegisteredBtcDepositAddress
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/registered_btc_deposit_address/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/registered_btc_deposit_address/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"depositAddress": "0x1234567890abcdef...",
"twilightDepositAddress": "twilight1abc123def456..."
}
GET /twilight-project/nyks/bridge/registered_btc_deposit_address/{depositAddress}
Queries a list of RegisteredBtcDepositAddress items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| depositAddress | path | string | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » depositAddress | string | false | none | none |
| » twilightDepositAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
RegisteredBtcDepositAddressByTwilightAddress
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/registered_btc_deposit_address_by_twilight_address/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/registered_btc_deposit_address_by_twilight_address/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"depositAddress": "0x1234567890abcdef...",
"twilightDepositAddress": "twilight1abc123def456..."
}
GET /twilight-project/nyks/bridge/registered_btc_deposit_address_by_twilight_address/{twilightDepositAddress}
Queries a list of RegisteredBtcDepositAddressByTwilightAddress items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| twilightDepositAddress | path | string | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » depositAddress | string | false | none | none |
| » twilightDepositAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
RegisteredBtcDepositAddresses
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/registered_btc_deposit_addresses \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/registered_btc_deposit_addresses', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"addresses": [
{
"btcDepositAddress": "0x1234567890abcdef...",
"btcSatoshiTestAmount": "1000000",
"twilightStakingAmount": "1000000",
"twilightAddress": "twilight1abc123def456...",
"isConfirmed": true,
"CreationTwilightBlockHeight": "CreationTwilightBlockHeight..."
}
]
}
GET /twilight-project/nyks/bridge/registered_btc_deposit_addresses
Queries a list of RegisteredBtcDepositAddresses items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » addresses | [object] | false | none | none |
| »» btcDepositAddress | string | false | none | none |
| »» btcSatoshiTestAmount | string(uint64) | false | none | none |
| »» twilightStakingAmount | string(uint64) | false | none | none |
| »» twilightAddress | string | false | none | none |
| »» isConfirmed | boolean | false | none | none |
| »» CreationTwilightBlockHeight | string(int64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
RegisteredJudgeAddressByValidatorAddress
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/registered_judge_address_by_validator_address/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/registered_judge_address_by_validator_address/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"judgeAddress": "0x1234567890abcdef...",
"numOfSigners": "1000000",
"threshold": "1000000",
"signerApplicationFee": "1000000",
"arbitraryData": "arbitraryData...",
"validatorAddress": "0x1234567890abcdef..."
}
GET /twilight-project/nyks/bridge/registered_judge_address_by_validator_address/{validatorAddress}
Queries a list of RegisteredJudgeAddressByValidatorAddress items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validatorAddress | path | string | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » judgeAddress | string | false | none | none |
| » numOfSigners | string(uint64) | false | none | none |
| » threshold | string(uint64) | false | none | none |
| » signerApplicationFee | string(uint64) | false | none | none |
| » arbitraryData | string | false | none | none |
| » validatorAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
RegisteredJudges
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/registered_judges \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/registered_judges', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"Judges": [
{
"judgeAddress": "0x1234567890abcdef...",
"numOfSigners": "1000000",
"threshold": "1000000",
"signerApplicationFee": "1000000",
"fragmentFeeBips": "1000000",
"arbitraryData": "arbitraryData...",
"validatorAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/registered_judges
Queries a list of RegisteredJudges items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » Judges | [object] | false | none | none |
| »» judgeAddress | string | false | none | none |
| »» numOfSigners | string(uint64) | false | none | none |
| »» threshold | string(uint64) | false | none | none |
| »» signerApplicationFee | string(uint64) | false | none | none |
| »» fragmentFeeBips | string(uint64) | false | none | none |
| »» arbitraryData | string | false | none | none |
| »» validatorAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
RegisteredReserveAddresses
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/registered_reserve_addresses \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/registered_reserve_addresses', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"addresses": [
{
"fragmentId": "1000000",
"reserveScript": "reserveScript...",
"reserveAddress": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/registered_reserve_addresses
Queries a list of RegisteredReserveAddresses items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » addresses | [object] | false | none | none |
| »» fragmentId | string(uint64) | false | none | none |
| »» reserveScript | string | false | none | none |
| »» reserveAddress | string | false | none | none |
| »» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SignRefund
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/sign_refund/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/sign_refund/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"signRefundMsg": [
{
"reserveId": "1000000",
"roundId": "1000000",
"signerPublicKey": "signerPublicKey...",
"refundSignature": [
"item..."
],
"signerAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/sign_refund/{reserveId}/{roundId}
Queries a list of SignRefund items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » signRefundMsg | [object] | false | none | none |
| »» 4. MsgSignRefund | object | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» signerPublicKey | string | false | none | none |
| »»» refundSignature | [string] | false | none | none |
| »»» signerAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SignRefundAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/sign_refund_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/sign_refund_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"signRefundMsg": [
{
"reserveId": "1000000",
"roundId": "1000000",
"signerPublicKey": "signerPublicKey...",
"refundSignature": [
"item..."
],
"signerAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/sign_refund_all
Queries a list of SignRefundAll items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » signRefundMsg | [object] | false | none | none |
| »» 4. MsgSignRefund | object | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» signerPublicKey | string | false | none | none |
| »»» refundSignature | [string] | false | none | none |
| »»» signerAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SignSweep
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/sign_sweep/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/sign_sweep/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"signSweepMsg": [
{
"reserveId": "1000000",
"roundId": "1000000",
"signerPublicKey": "signerPublicKey...",
"sweepSignature": [
"item..."
],
"signerAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/sign_sweep/{reserveId}/{roundId}
Queries a list of SignSweep items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » signSweepMsg | [object] | false | none | none |
| »» 5. MsgSignSweep | object | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» signerPublicKey | string | false | none | none |
| »»» sweepSignature | [string] | false | none | none |
| »»» signerAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SignSweepAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/sign_sweep_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/sign_sweep_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"signSweepMsg": [
{
"reserveId": "1000000",
"roundId": "1000000",
"signerPublicKey": "signerPublicKey...",
"sweepSignature": [
"item..."
],
"signerAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/sign_sweep_all
Queries a list of SignSweepAll items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » signSweepMsg | [object] | false | none | none |
| »» 5. MsgSignSweep | object | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» signerPublicKey | string | false | none | none |
| »»» sweepSignature | [string] | false | none | none |
| »»» signerAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
UnsignedTxRefund
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_refund/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_refund/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"unsignedTxRefundMsg": {
"reserveId": "1000000",
"roundId": "1000000",
"btcUnsignedRefundTx": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
}
GET /twilight-project/nyks/bridge/unsigned_tx_refund/{reserveId}/{roundId}
Queries a list of UnsignedTxRefund items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » unsignedTxRefundMsg | object | false | none | none |
| »» reserveId | string(uint64) | false | none | none |
| »» roundId | string(uint64) | false | none | none |
| »» btcUnsignedRefundTx | string | false | none | none |
| »» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
UnsignedTxRefundAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_refund_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_refund_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"unsignedTxRefundMsgs": [
{
"reserveId": "1000000",
"roundId": "1000000",
"btcUnsignedRefundTx": "0x1234567890abcdef...",
"judgeAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/unsigned_tx_refund_all
Queries a list of UnsignedTxRefundAll items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| limit | query | string(uint64) | false | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » unsignedTxRefundMsgs | [object] | false | none | none |
| »» 3. MsgUnsignedTxRefund | object | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» btcUnsignedRefundTx | string | false | none | none |
| »»» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
UnsignedTxSweep
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_sweep/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_sweep/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"unsignedTxSweepMsg": {
"txId": "0x1234567890abcdef...",
"btcUnsignedSweepTx": "0x1234567890abcdef...",
"reserveId": "1000000",
"roundId": "1000000",
"judgeAddress": "0x1234567890abcdef..."
}
}
GET /twilight-project/nyks/bridge/unsigned_tx_sweep/{reserveId}/{roundId}
Queries a list of UnsignedTxSweep items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » unsignedTxSweepMsg | object | false | none | none |
| »» txId | string | false | none | none |
| »» btcUnsignedSweepTx | string | false | none | none |
| »» reserveId | string(uint64) | false | none | none |
| »» roundId | string(uint64) | false | none | none |
| »» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
UnsignedTxSweepAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_sweep_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/unsigned_tx_sweep_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"unsignedTxSweepMsgs": [
{
"txId": "0x1234567890abcdef...",
"btcUnsignedSweepTx": "0x1234567890abcdef...",
"reserveId": "1000000",
"roundId": "1000000",
"judgeAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/bridge/unsigned_tx_sweep_all
Queries a list of UnsignedTxSweepAll items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| limit | query | string(uint64) | false | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » unsignedTxSweepMsgs | [object] | false | none | none |
| »» 2. MsgUnsignedTxSweep | object | false | none | none |
| »»» txId | string | false | none | none |
| »»» btcUnsignedSweepTx | string | false | none | none |
| »»» reserveId | string(uint64) | false | none | none |
| »»» roundId | string(uint64) | false | none | none |
| »»» judgeAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
WithdrawBtcRequestAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/bridge/withdraw_btc_request_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/bridge/withdraw_btc_request_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"withdrawRequest": [
{
"withdrawIdentifier": 0,
"withdrawAddress": "0x1234567890abcdef...",
"withdrawReserveId": "1000000",
"withdrawAmount": "1000000",
"twilightAddress": "twilight1abc123def456...",
"isConfirmed": true,
"CreationTwilightBlockHeight": "CreationTwilightBlockHeight..."
}
]
}
GET /twilight-project/nyks/bridge/withdraw_btc_request_all
Queries a list of WithdrawBtcRequestAll items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » withdrawRequest | [object] | false | none | none |
| »» Chain creates an internal mapping with identifier and bool confirmed | object | false | none | none |
| »»» withdrawIdentifier | integer(int64) | false | none | none |
| »»» withdrawAddress | string | false | none | none |
| »»» withdrawReserveId | string(uint64) | false | none | none |
| »»» withdrawAmount | string(uint64) | false | none | none |
| »»» twilightAddress | string | false | none | none |
| »»» isConfirmed | boolean | false | none | none |
| »»» CreationTwilightBlockHeight | string(int64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Forkscanner Module
The Forks module (Forkscanner) manages validator delegate key mappings. Validators register their BTC oracle address, public key, and zkOS oracle address through this module. These delegate keys are used by the bridge module for BTC chain tip attestation and the zkOS module for oracle operations.
Base URL: https://lcd.twilight.org
DelegateKeysAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/forks/delegate_keys_all \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/forks/delegate_keys_all', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"addresses": [
{
"validatorAddress": "0x1234567890abcdef...",
"btcOracleAddress": "0x1234567890abcdef...",
"btcPublicKey": "btcPublicKey...",
"zkOracleAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/forks/delegate_keys_all
Queries a list of DelegateKeysAll items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » addresses | [object] | false | none | none |
| »» validatorAddress | string | false | none | none |
| »» btcOracleAddress | string | false | none | none |
| »» btcPublicKey | string | false | none | none |
| »» zkOracleAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
This operation does not require authentication
DelegateKeysByBtcOracleAddress
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/forks/delegate_keys_by_btc_oracle_address/{btcOracleAddress} \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/forks/delegate_keys_by_btc_oracle_address/{btcOracleAddress}', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"addresses": {
"validatorAddress": "0x1234567890abcdef...",
"btcOracleAddress": "0x1234567890abcdef...",
"btcPublicKey": "btcPublicKey...",
"zkOracleAddress": "0x1234567890abcdef..."
}
}
GET /twilight-project/nyks/forks/delegate_keys_by_btc_oracle_address/{btcOracleAddress}
Queries a list of DelegateKeysByBtcOracleAddress items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| btcOracleAddress | path | string | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » addresses | object | false | none | none |
| »» validatorAddress | string | false | none | none |
| »» btcOracleAddress | string | false | none | none |
| »» btcPublicKey | string | false | none | none |
| »» zkOracleAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
This operation does not require authentication
Twilight Volt Module
The Volt module manages BTC reserves, fragments (multi-signature key groups), signer applications, clearing accounts, and withdrawal pools. Fragments are groups of validators that collectively control reserve Bitcoin addresses using threshold signatures. Clearing accounts track per-user balances across reserves.
Base URL: https://lcd.twilight.org
BtcReserve
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/btc_reserve \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/btc_reserve', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"BtcReserves": [
{
"ReserveId": "1000000",
"ReserveAddress": "0x1234567890abcdef...",
"JudgeAddress": "0x1234567890abcdef...",
"BtcRelayCapacityValue": "1000000",
"TotalValue": "1000000",
"PrivatePoolValue": "1000000",
"PublicValue": "1000000",
"FeePool": "1000000",
"UnlockHeight": "1000000",
"RoundId": "1000000"
}
]
}
GET /twilight-project/nyks/volt/btc_reserve
Queries a list of BtcReserve items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » BtcReserves | [object] | false | none | none |
| »» BtcReserve is a mapping of a validator address to a reserve ID |
It holds other values in the reserve struct such as total value, private pool value, public pool value, and the btc relay capacity value|object|false|none|none| |»»» ReserveId|string(uint64)|false|none|none| |»»» ReserveAddress|string|false|none|none| |»»» JudgeAddress|string|false|none|none| |»»» BtcRelayCapacityValue|string(uint64)|false|none|none| |»»» TotalValue|string(uint64)|false|none|none| |»»» PrivatePoolValue|string(uint64)|false|none|none| |»»» PublicValue|string(uint64)|false|none|none| |»»» FeePool|string(uint64)|false|none|none| |»»» UnlockHeight|string(uint64)|false|none|none| |»»» RoundId|string(uint64)|false|none|none|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
BtcWithdrawRequest
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/btc_withdraw_request/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/btc_withdraw_request/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"BtcWithdrawRequest": {
"withdrawIdentifier": 0,
"withdrawAddress": "0x1234567890abcdef...",
"withdrawReserveId": "1000000",
"withdrawAmount": "1000000",
"twilightAddress": "twilight1abc123def456...",
"isConfirmed": true,
"CreationTwilightBlockHeight": "CreationTwilightBlockHeight..."
}
}
GET /twilight-project/nyks/volt/btc_withdraw_request/{twilightAddress}
Queries a list of BtcWithdrawRequest items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| twilightAddress | path | string | true | none |
| reserveId | query | string(uint64) | false | none |
| btcAddress | query | string | false | none |
| withdrawAmount | query | string(uint64) | false | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » BtcWithdrawRequest | object | false | none | none |
| »» withdrawIdentifier | integer(int64) | false | none | none |
| »» withdrawAddress | string | false | none | none |
| »» withdrawReserveId | string(uint64) | false | none | none |
| »» withdrawAmount | string(uint64) | false | none | none |
| »» twilightAddress | string | false | none | none |
| »» isConfirmed | boolean | false | none | none |
| »» CreationTwilightBlockHeight | string(int64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ClearingAccount
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/clearing_account/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/clearing_account/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"ClearingAccount": {
"TwilightAddress": "twilight1abc123def456...",
"BtcDepositAddress": "0x1234567890abcdef...",
"BtcDepositAddressIdentifier": 0,
"BtcWithdrawAddress": "0x1234567890abcdef...",
"BtcWithdrawAddressIdentifier": 0,
"ReserveAccountBalances": [
{
"ReserveId": "1000000",
"Amount": "1000000"
}
]
}
}
GET /twilight-project/nyks/volt/clearing_account/{twilightAddress}
Queries a list of ClearingAccount items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| twilightAddress | path | string | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » ClearingAccount | object | false | none | none |
| »» TwilightAddress | string | false | none | none |
| »» BtcDepositAddress | string | false | none | none |
| »» BtcDepositAddressIdentifier | integer(int64) | false | none | none |
| »» BtcWithdrawAddress | string | false | none | none |
| »» BtcWithdrawAddressIdentifier | integer(int64) | false | none | none |
| »» ReserveAccountBalances | [object] | false | none | none |
| »»» ReserveId | string(uint64) | false | none | none |
| »»» Amount | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
FragmentById
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/fragment_by_id/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/fragment_by_id/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"Fragment": {
"FragmentId": "1000000",
"FragmentStatus": true,
"JudgeAddress": "0x1234567890abcdef...",
"JudgeStatus": true,
"Signers": [
{
"FragmentID": "1000000",
"SignerAddress": "0x1234567890abcdef...",
"SignerStatus": true
}
],
"SignerApplicationFee": "1000000",
"Threshold": "1000000",
"FeePool": "1000000",
"FragmentFeeBips": "1000000",
"arbitraryData": "arbitraryData...",
"ReserveIds": [
"1000000"
]
}
}
GET /twilight-project/nyks/volt/fragment_by_id/{fragmentId}
Queries a list of FragmentById items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| fragmentId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » Fragment | object | false | none | none |
| »» FragmentId | string(uint64) | false | none | none |
| »» FragmentStatus | boolean | false | none | none |
| »» JudgeAddress | string | false | none | none |
| »» JudgeStatus | boolean | false | none | none |
| »» Signers | [object] | false | none | none |
| »»» FragmentID | string(uint64) | false | none | none |
| »»» SignerAddress | string | false | none | none |
| »»» SignerStatus | boolean | false | none | none |
| »»» SignerBtcPublicKey | string | false | none | none |
| »»» SignerApplicationFee | string(uint64) | false | none | none |
| »»» SignerFeeBips | string(uint64) | false | none | none |
| »» SignerApplicationFee | string(uint64) | false | none | none |
| »» Threshold | string(uint64) | false | none | none |
| »» FeePool | string(uint64) | false | none | none |
| »» FragmentFeeBips | string(uint64) | false | none | none |
| »» arbitraryData | string | false | none | none |
| »» ReserveIds | [string] | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
GetAllFragments
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/get_all_fragments \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/get_all_fragments', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"Fragments": [
{
"FragmentId": "1000000",
"FragmentStatus": true,
"JudgeAddress": "0x1234567890abcdef...",
"JudgeStatus": true,
"Signers": [
{
"FragmentID": "1000000",
"SignerAddress": "0x1234567890abcdef...",
"SignerStatus": true
}
],
"SignerApplicationFee": "1000000",
"Threshold": "1000000",
"FeePool": "1000000",
"FragmentFeeBips": "1000000",
"arbitraryData": "arbitraryData...",
"ReserveIds": [
"1000000"
]
}
]
}
GET /twilight-project/nyks/volt/get_all_fragments
Queries a list of GetAllFragments items.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » Fragments | [object] | false | none | none |
| »» FragmentId | string(uint64) | false | none | none |
| »» FragmentStatus | boolean | false | none | none |
| »» JudgeAddress | string | false | none | none |
| »» JudgeStatus | boolean | false | none | none |
| »» Signers | [object] | false | none | none |
| »»» FragmentID | string(uint64) | false | none | none |
| »»» SignerAddress | string | false | none | none |
| »»» SignerStatus | boolean | false | none | none |
| »»» SignerBtcPublicKey | string | false | none | none |
| »»» SignerApplicationFee | string(uint64) | false | none | none |
| »»» SignerFeeBips | string(uint64) | false | none | none |
| »» SignerApplicationFee | string(uint64) | false | none | none |
| »» Threshold | string(uint64) | false | none | none |
| »» FeePool | string(uint64) | false | none | none |
| »» FragmentFeeBips | string(uint64) | false | none | none |
| »» arbitraryData | string | false | none | none |
| »» ReserveIds | [string] | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"params": {}
}
GET /twilight-project/nyks/volt/params
Parameters queries the parameters of the module.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params holds all the parameters of this module. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
RefundTxSnapshot
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/refund_tx_snapshot/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/refund_tx_snapshot/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"RefundTxSnapshot": {
"ReserveId": "1000000",
"RoundId": "1000000",
"refundAccounts": [
{
"Amount": "1000000",
"BtcDepositAddress": "0x1234567890abcdef...",
"BtcDepositAddressIdentifier": 0
}
],
"EndBlockerHeightTwilight": "EndBlockerHeightTwilight..."
}
}
GET /twilight-project/nyks/volt/refund_tx_snapshot/{reserveId}/{roundId}
Queries a list of RefundTxSnapshot items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » RefundTxSnapshot | object | false | none | none |
| »» ReserveId | string(uint64) | false | none | none |
| »» RoundId | string(uint64) | false | none | none |
| »» refundAccounts | [object] | false | none | none |
| »»» RefundTxSnap is used to keep a mapping of the last refund transaction for a reserve | object | false | none | none |
| »»»» Amount | string(uint64) | false | none | none |
| »»»» BtcDepositAddress | string | false | none | none |
| »»»» BtcDepositAddressIdentifier | integer(int64) | false | none | none |
| »» EndBlockerHeightTwilight | string(int64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ReserveClearingAccountsAll
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/reserve_clearing_accounts_all/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/reserve_clearing_accounts_all/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"ReserveClearingAccountsAll": [
{
"TwilightAddress": "twilight1abc123def456...",
"BtcDepositAddress": "0x1234567890abcdef...",
"BtcDepositAddressIdentifier": 0,
"BtcWithdrawAddress": "0x1234567890abcdef...",
"BtcWithdrawAddressIdentifier": 0,
"ReserveAccountBalances": [
{
"ReserveId": "1000000",
"Amount": "1000000"
}
]
}
]
}
GET /twilight-project/nyks/volt/reserve_clearing_accounts_all/{reserveId}
Queries a list of ReserveClearingAccountsAll items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » ReserveClearingAccountsAll | [object] | false | none | none |
| »» ClearingAccount is used to keep a mapping of how a user's addresses and its reserve account balances | object | false | none | none |
| »»» TwilightAddress | string | false | none | none |
| »»» BtcDepositAddress | string | false | none | none |
| »»» BtcDepositAddressIdentifier | integer(int64) | false | none | none |
| »»» BtcWithdrawAddress | string | false | none | none |
| »»» BtcWithdrawAddressIdentifier | integer(int64) | false | none | none |
| »»» ReserveAccountBalances | [object] | false | none | none |
| »»»» ReserveId | string(uint64) | false | none | none |
| »»»» Amount | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ReserveWithdrawPool
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/reserve_withdraw_pool/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/reserve_withdraw_pool/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"ReserveWithdrawPool": {
"ReserveID": "1000000",
"RoundID": "1000000",
"processingWithdrawIdentifiers": [
0
],
"queuedWithdrawIdentifiers": [
0
],
"currentProcessingIndex": 0
}
}
GET /twilight-project/nyks/volt/reserve_withdraw_pool/{reserveId}
Queries a list of ReserveWithdrawPool items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » ReserveWithdrawPool | object | false | none | none |
| »» ReserveID | string(uint64) | false | none | none |
| »» RoundID | string(uint64) | false | none | none |
| »» processingWithdrawIdentifiers | [integer] | false | none | none |
| »» queuedWithdrawIdentifiers | [integer] | false | none | none |
| »» currentProcessingIndex | integer(int64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ReserveWithdrawSnapshot
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/reserve_withdraw_snapshot/string/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/reserve_withdraw_snapshot/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"ReserveWithdrawSnapshot": {
"ReserveId": "1000000",
"RoundId": "1000000",
"withdrawRequests": [
{
"withdrawIdentifier": 0,
"withdrawAddress": "0x1234567890abcdef...",
"withdrawAmount": "1000000"
}
],
"EndBlockerHeightTwilight": "EndBlockerHeightTwilight..."
}
}
GET /twilight-project/nyks/volt/reserve_withdraw_snapshot/{reserveId}/{roundId}
Queries a list of ReserveWithdrawSnapshot items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| reserveId | path | string(uint64) | true | none |
| roundId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » ReserveWithdrawSnapshot | object | false | none | none |
| »» ReserveId | string(uint64) | false | none | none |
| »» RoundId | string(uint64) | false | none | none |
| »» withdrawRequests | [object] | false | none | none |
| »»» WithdrawRequestSnap is a snapshot of the withdraw request | object | false | none | none |
| »»»» withdrawIdentifier | integer(int64) | false | none | none |
| »»»» withdrawAddress | string | false | none | none |
| »»»» withdrawAmount | string(uint64) | false | none | none |
| »» EndBlockerHeightTwilight | string(int64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SignerApplications
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/volt/signer_applications/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/volt/signer_applications/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"SignerApplications": [
{
"applicationId": "1000000",
"fragmentId": "1000000",
"applicationFee": "1000000",
"feeBips": "1000000",
"btcPubKey": "btcPubKey...",
"signerAddress": "0x1234567890abcdef..."
}
]
}
GET /twilight-project/nyks/volt/signer_applications/{fragmentId}
Queries a list of SignerApplications items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| fragmentId | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » SignerApplications | [object] | false | none | none |
| »» applicationId | string(uint64) | false | none | none |
| »» fragmentId | string(uint64) | false | none | none |
| »» applicationFee | string(uint64) | false | none | none |
| »» feeBips | string(uint64) | false | none | none |
| »» btcPubKey | string | false | none | none |
| »» signerAddress | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Nyks Auth Module
Accounts
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/auth/v1beta1/accounts \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/auth/v1beta1/accounts', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"accounts": [
{
"@type": "@type..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
GET /cosmos/auth/v1beta1/accounts
Accounts returns all the existing accounts
Since: cosmos-sdk 0.43
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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*
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » accounts | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Account
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/auth/v1beta1/accounts/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/auth/v1beta1/accounts/string', {
> The result from the above endpoint looks like this:
```json
{
"account": {
"@type": "@type..."
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/auth/v1beta1/accounts/{address}
Account returns account details based on address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| address | path | string | true | address defines the address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryAccountResponse is the response type for the Query/Account RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » account | object | false | none | account defines the account of the corresponding address. |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Params
Code samples
> The result from the above endpoint looks like this:
```json
{
"params": {
"max_memo_characters": "1000000",
"tx_sig_limit": "1000000",
"tx_size_cost_per_byte": "1000000",
"sig_verify_cost_ed25519": "1000000",
"sig_verify_cost_secp256k1": "1000000"
}
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/auth/v1beta1/params \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/auth/v1beta1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/auth/v1beta1/params
Params queries all parameters.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is the response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params defines the parameters of the module. |
| »» max_memo_characters | string(uint64) | false | none | none |
| »» tx_sig_limit | string(uint64) | false | none | none |
| »» tx_size_cost_per_byte | string(uint64) | false | none | none |
| »» sig_verify_cost_ed25519 | string(uint64) | false | none | none |
| »» sig_verify_cost_secp256k1 | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Nyks Bank Module
AllBalances
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/bank/v1beta1/balances/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/balances/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"balances": [
{
"denom": "denom...",
"amount": "1000"
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
GET /cosmos/bank/v1beta1/balances/{address}
AllBalances queries the balance of all coins for a single account.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| address | path | string | true | address is the address to query balances for. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryAllBalancesResponse is the response type for the Query/AllBalances RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » balances | [object] | false | none | balances is the balances of all the coins. |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Balance
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/bank/v1beta1/balances/string/by_denom \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/balances/string/by_denom', {
> The result from the above endpoint looks like this:
```json
{
"balance": {
"denom": "denom...",
"amount": "1000"
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/bank/v1beta1/balances/{address}/by_denom
Balance queries the balance of a single coin for a single account.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| address | path | string | true | address is the address to query balances for. |
| denom | query | string | false | denom is the coin denom to query balances for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryBalanceResponse is the response type for the Query/Balance RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » balance | object | false | none | balance is the balance of the coin. |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
DenomsMetadata
Code samples
> The result from the above endpoint looks like this:
```json
{
"metadatas": [
{
"description": "description...",
"denom_units": [
{
"denom": "denom...",
"exponent": 0,
"aliases": [
"item..."
]
}
],
"base": "base..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/bank/v1beta1/denoms_metadata \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/denoms_metadata', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/bank/v1beta1/denoms_metadata
DenomsMetadata queries the client metadata for all registered coin denominations.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDenomsMetadataResponse is the response type for the Query/DenomsMetadata RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » metadatas | [object] | false | none | metadata provides the client information for all the registered tokens. |
| »» description | string | false | none | none |
| »» denom_units | [object] | false | none | none |
| »»» denom | string | false | none | denom represents the string name of the given denom unit (e.g uatom). |
| »»» exponent | integer(int64) | false | none | exponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 1^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] | false | none | none |
| »» base | string | false | none | base represents the base denom (should be the DenomUnit with exponent = 0). |
| »» display | string | false | none | display indicates the suggested denom that should bedisplayed in clients. |
| »» name | string | false | none | Since: cosmos-sdk 0.43 |
| »» symbol | string | false | none | symbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43 |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
The result from the above endpoint looks like this:
{
"metadata": {
"description": "description...",
"denom_units": [
{
"denom": "denom...",
"exponent": 0,
"aliases": [
"item..."
]
}
],
"base": "base...",
"display": "display...",
"name": "name...",
"symbol": "symbol..."
}
}
This operation does not require authentication
DenomMetadata
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/bank/v1beta1/denoms_metadata/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/denoms_metadata/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/bank/v1beta1/denoms_metadata/{denom}
DenomsMetadata queries the client metadata of a given coin denomination.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| denom | path | string | true | denom is the coin denom to query the metadata for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDenomMetadataResponse is the response type for the Query/DenomMetadata RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » metadata | object | false | none | metadata describes and provides all the client information for the requested token. |
| »» description | string | false | none | none |
| »» denom_units | [object] | false | none | none |
| »»» denom | string | false | none | denom represents the string name of the given denom unit (e.g uatom). |
| »»» exponent | integer(int64) | false | none | exponent represents power of 10 exponent that one mustraise the base_denom to in order to equal the given DenomUnit's denom1 denom = 1^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] | false | none | none |
| »» base | string | false | none | base represents the base denom (should be the DenomUnit with exponent = 0). |
| »» display | string | false | none | display indicates the suggested denom that should bedisplayed in clients. |
| »» name | string | false | none | Since: cosmos-sdk 0.43 |
| »» symbol | string | false | none | symbol is the token symbol usually shown on exchanges (eg: ATOM). This canbe the same as the display.Since: cosmos-sdk 0.43 |
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"params": {
"send_enabled": [
{
"denom": "denom...",
"enabled": true
}
],
"default_send_enabled": true
}
}
|---|---|---|---|---| |» code|integer(int32)|false|none|none| |» message|string|false|none|none| |» details|[object]|false|none|none| |»» additionalProperties|any|false|none|none| |»» @type|string|false|none|none|
This operation does not require authentication
Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/bank/v1beta1/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/bank/v1beta1/params
Params queries the parameters of x/bank module.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse defines the response type for querying x/bank parameters.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | Params defines the parameters for the bank module. |
| »» send_enabled | [object] | false | none | none |
The result from the above endpoint looks like this:
{
"balances": [
{
"denom": "denom...",
"amount": "1000"
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
|»»» denom|string|false|none|none| |»»» enabled|boolean|false|none|none| |»» default_send_enabled|boolean|false|none|none|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SpendableBalances
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/bank/v1beta1/spendable_balances/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/spendable_balances/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/bank/v1beta1/spendable_balances/{address}
SpendableBalances queries the spenable balance of all coins for a single account.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| address | path | string | true | address is the address to query spendable balances for. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
*QuerySpendableBalancesResponse defines the gRPC response structure for querying
The result from the above endpoint looks like this:
{
"supply": [
{
"denom": "denom...",
"amount": "1000"
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
an account's spendable balances.*
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » balances | [object] | false | none | balances is the spendable balances of all the coins. |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
TotalSupply
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/bank/v1beta1/supply \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/supply', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/bank/v1beta1/supply
TotalSupply queries the total supply of all coins.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
The result from the above endpoint looks like this:
{
"amount": {
"denom": "denom...",
"amount": "1000"
}
}
|default|Default|An unexpected error response.|Inline|
Response Schema
Status Code 200
QueryTotalSupplyResponse is the response type for the Query/TotalSupply RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » supply | [object] | false | none | none |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response.Since: cosmos-sdk 0.43 |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SupplyOf
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/bank/v1beta1/supply/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/bank/v1beta1/supply/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/bank/v1beta1/supply/{denom}
SupplyOf queries the supply of a single coin.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| denom | path | string | true | denom is the coin denom to query balances for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » amount | object | false | none | amount is the supply of the coin. |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Nyks Distribution Module
CommunityPool
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/community_pool \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/community_pool', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"pool": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
GET /cosmos/distribution/v1beta1/community_pool
CommunityPool queries the community pool coins.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryCommunityPoolResponse is the response type for the Query/CommunityPool RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » pool | [object] | false | none | pool defines community pool's coins. |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
DelegationTotalRewards
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/rewards \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/rewards', {
> The result from the above endpoint looks like this:
```json
{
"rewards": [
{
"validator_address": "0x1234567890abcdef...",
"reward": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
],
"total": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards
DelegationTotalRewards queries the total rewards accrued by a each validator.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_address | path | string | true | delegator_address defines the delegator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegationTotalRewardsResponse is the response type for the Query/DelegationTotalRewards RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » rewards | [object] | false | none | rewards defines all the rewards accrued by a delegator. |
| »» validator_address | string | false | none | none |
| »» reward | [object] | false | none | none |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
| » total | [object] | false | none | total defines the sum of all the rewards. |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
DelegationRewards
Code samples
> The result from the above endpoint looks like this:
```json
{
"rewards": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/rewards/string \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/rewards/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}
DelegationRewards queries the total rewards accrued by a delegation.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_address | path | string | true | delegator_address defines the delegator address to query for. |
| validator_address | path | string | true | validator_address defines the validator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegationRewardsResponse is the response type for the Query/DelegationRewards RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » rewards | [object] | false | none | rewards defines the rewards accrued by a delegation. |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
The result from the above endpoint looks like this:
{
"validators": []
}
This operation does not require authentication
DelegatorValidators
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/validators \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/validators', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/validators
DelegatorValidators queries the validators of a delegator.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_address | path | string | true | delegator_address defines the delegator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegatorValidatorsResponse is the response type for the Query/DelegatorValidators RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » validators | [string] | false | none | validators defines the validators a delegator is delegating for. |
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"withdraw_address": "0x1234567890abcdef..."
}
|---|---|---|---|---| |» code|integer(int32)|false|none|none| |» message|string|false|none|none| |» details|[object]|false|none|none| |»» additionalProperties|any|false|none|none| |»» @type|string|false|none|none|
This operation does not require authentication
DelegatorWithdrawAddress
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/withdraw_address \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/delegators/string/withdraw_address', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address
DelegatorWithdrawAddress queries withdraw address of a delegator.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_address | path | string | true | delegator_address defines the delegator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegatorWithdrawAddressResponse is the response type for the Query/DelegatorWithdrawAddress RPC method.
The result from the above endpoint looks like this:
{
"params": {
"community_tax": "community_tax...",
"base_proposer_reward": "base_proposer_reward...",
"bonus_proposer_reward": "bonus_proposer_reward...",
"withdraw_addr_enabled": true
}
}
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » withdraw_address | string | false | none | withdraw_address defines the delegator address to query for. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/distribution/v1beta1/params
Params queries params of the distribution module.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
The result from the above endpoint looks like this:
{
"commission": {
"commission": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
}
QueryParamsResponse is the response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params defines the parameters of the module. |
| »» community_tax | string | false | none | none |
| »» base_proposer_reward | string | false | none | none |
| »» bonus_proposer_reward | string | false | none | none |
| »» withdraw_addr_enabled | boolean | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ValidatorCommission
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/validators/string/commission \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/validators/string/commission', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/distribution/v1beta1/validators/{validator_address}/commission
ValidatorCommission queries accumulated commission for a validator.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_address | path | string | true | validator_address defines the validator address to query for. |
Example responses
200 Response
Responses
|Status|Meaning|Description|Schema|
The result from the above endpoint looks like this:
{
"rewards": {
"rewards": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
}
|---|---|---|---| |200|OK|A successful response.|Inline| |default|Default|An unexpected error response.|Inline|
Response Schema
Status Code 200
QueryValidatorCommissionResponse is the response type for the Query/ValidatorCommission RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » commission | object | false | none | commission defines the commision the validator received. |
| »» commission | [object] | false | none | none |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ValidatorOutstandingRewards
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/validators/string/outstanding_rewards \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/validators/string/outstanding_rewards', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards
ValidatorOutstandingRewards queries rewards of a validator address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_address | path | string | true | validator_address defines the validator address to query for. |
The result from the above endpoint looks like this:
{
"slashes": [
{
"validator_period": "1000000",
"fraction": "fraction..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryValidatorOutstandingRewardsResponse is the response type for the Query/ValidatorOutstandingRewards RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » rewards | object | false | none | ValidatorOutstandingRewards represents outstanding (un-withdrawn) rewardsfor a validator inexpensive to track, allows simple sanity checks. |
| »» rewards | [object] | false | none | none |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
ValidatorSlashes
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/distribution/v1beta1/validators/string/slashes \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/distribution/v1beta1/validators/string/slashes', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/distribution/v1beta1/validators/{validator_address}/slashes
ValidatorSlashes queries slash events of a validator.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_address | path | string | true | validator_address defines the validator address to query for. |
| starting_height | query | string(uint64) | false | starting_height defines the optional starting height to query the slashes. |
| ending_height | query | string(uint64) | false | starting_height defines the optional ending height to query the slashes. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryValidatorSlashesResponse is the response type for the Query/ValidatorSlashes RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » slashes | [object] | false | none | slashes defines the slashes the validator received. |
| »» validator_period | string(uint64) | false | none | none |
| »» fraction | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Nyks Governance Module
Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/gov/v1beta1/params/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/params/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"voting_params": {
"voting_period": "voting_period..."
},
"deposit_params": {
"min_deposit": [
{
"denom": "denom...",
"amount": "1000"
}
],
"max_deposit_period": "max_deposit_period..."
},
"tally_params": {
"quorum": "quorum...",
"threshold": "threshold...",
"veto_threshold": "veto_threshold..."
}
}
GET /cosmos/gov/v1beta1/params/{params_type}
Params queries all parameters of the gov module.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| params_type | path | string | true | params_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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is the response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » voting_params | object | false | none | voting_params defines the parameters related to voting. |
| »» voting_period | string | false | none | Length of the voting period. |
| » deposit_params | object | false | none | deposit_params defines the parameters related to deposit. |
| »» min_deposit | [object] | false | none | Minimum deposit for a proposal to enter voting period. |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
| »» max_deposit_period | string | false | none | Maximum period for Atom holders to deposit on a proposal. Initial value: 2 months. |
| » tally_params | object | false | none | tally_params defines the parameters related to tally. |
| »» quorum | string(byte) | false | none | Minimum percentage of total stake needed to vote for a result to be considered valid. |
| »» threshold | string(byte) | false | none | Minimum proportion of Yes votes for proposal to pass. Default value: 0.5. |
| »» veto_threshold | string(byte) | false | none | Minimum value of Veto votes to Total votes ratio for proposal to be vetoed. Default value: 1/3. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Proposals
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/gov/v1beta1/proposals \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/proposals', {
> The result from the above endpoint looks like this:
```json
{
"proposals": [
{
"proposal_id": "1000000",
"content": {
"@type": "@type..."
},
"status": "status..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/gov/v1beta1/proposals
Proposals queries all proposals based on given status.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| proposal_status | query | string | false | proposal_status defines the status of the proposals. |
| voter | query | string | false | voter defines the voter address for the proposals. |
| depositor | query | string | false | depositor defines the deposit addresses from the proposals. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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 propopsal 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
| Parameter | Value |
|---|---|
| proposal_status | PROPOSAL_STATUS_UNSPECIFIED |
| proposal_status | PROPOSAL_STATUS_DEPOSIT_PERIOD |
| proposal_status | PROPOSAL_STATUS_VOTING_PERIOD |
| proposal_status | PROPOSAL_STATUS_PASSED |
| proposal_status | PROPOSAL_STATUS_REJECTED |
| proposal_status | PROPOSAL_STATUS_FAILED |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryProposalsResponse is the response type for the Query/Proposals RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » proposals | [object] | false | none | none |
| »» proposal_id | string(uint64) | false | none | none |
| »» content | object | false | none | Any 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".JSON====The 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" } |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» status | string | false | none | ProposalStatus enumerates the valid statuses of a proposal. - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal 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. |
| »» final_tally_result | object | false | none | TallyResult defines a standard tally for a governance proposal. |
| »»» yes | string | false | none | none |
| »»» abstain | string | false | none | none |
| »»» no | string | false | none | none |
| »»» no_with_veto | string | false | none | none |
| »» submit_time | string(date-time) | false | none | none |
| »» deposit_end_time | string(date-time) | false | none | none |
| »» total_deposit | [object] | false | none | none |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
| »» voting_start_time | string(date-time) | false | none | none |
| »» voting_end_time | string(date-time) | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| status | PROPOSAL_STATUS_UNSPECIFIED |
| status | PROPOSAL_STATUS_DEPOSIT_PERIOD |
| status | PROPOSAL_STATUS_VOTING_PERIOD |
| status | PROPOSAL_STATUS_PASSED |
| status | PROPOSAL_STATUS_REJECTED |
| status | PROPOSAL_STATUS_FAILED |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Proposal
Code samples
> The result from the above endpoint looks like this:
```json
{
"proposal": {
"proposal_id": "1000000",
"content": {
"@type": "@type..."
},
"status": "status...",
"final_tally_result": {
"yes": "yes...",
"abstain": "abstain...",
"no": "no..."
},
"submit_time": "submit_time...",
"deposit_end_time": "deposit_end_time...",
"total_deposit": [
{
"denom": "denom...",
"amount": "1000"
}
],
"voting_start_time": "voting_start_time...",
"voting_end_time": "voting_end_time..."
}
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/gov/v1beta1/proposals/{proposal_id}
Proposal queries proposal details based on ProposalID.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| proposal_id | path | string(uint64) | true | proposal_id defines the unique id of the proposal. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryProposalResponse is the response type for the Query/Proposal RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » proposal | object | false | none | Proposal defines the core field members of a governance proposal. |
| »» proposal_id | string(uint64) | false | none | none |
| »» content | object | false | none | Any 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".JSON====The 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" } |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» status | string | false | none | ProposalStatus enumerates the valid statuses of a proposal. - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal 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. |
| »» final_tally_result | object | false | none | TallyResult defines a standard tally for a governance proposal. |
| »»» yes | string | false | none | none |
| »»» abstain | string | false | none | none |
| »»» no | string | false | none | none |
| »»» no_with_veto | string | false | none | none |
| »» submit_time | string(date-time) | false | none | none |
| »» deposit_end_time | string(date-time) | false | none | none |
| »» total_deposit | [object] | false | none | none |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
| »» voting_start_time | string(date-time) | false | none | none |
| »» voting_end_time | string(date-time) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| status | PROPOSAL_STATUS_UNSPECIFIED |
| status | PROPOSAL_STATUS_DEPOSIT_PERIOD |
| status | PROPOSAL_STATUS_VOTING_PERIOD |
| status | PROPOSAL_STATUS_PASSED |
| status | PROPOSAL_STATUS_REJECTED |
| status | PROPOSAL_STATUS_FAILED |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"deposits": [
{
"proposal_id": "1000000",
"depositor": "depositor...",
"amount": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
This operation does not require authentication
Deposits
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/deposits \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/deposits', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits
Deposits queries all deposits of a single proposal.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| proposal_id | path | string(uint64) | true | proposal_id defines the unique id of the proposal. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDepositsResponse is the response type for the Query/Deposits RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » deposits | [object] | false | none | none |
| »» proposal_id | string(uint64) | false | none | none |
| »» depositor | string | false | none | none |
| »» amount | [object] | false | none | none |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"deposit": {
"proposal_id": "1000000",
"depositor": "depositor...",
"amount": [
{
"denom": "denom...",
"amount": "1000"
}
]
}
}
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» additionalProperties|any|false|none|none|
|»» @type|string|false|none|A 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.|
This operation does not require authentication
Deposit
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/deposits/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/deposits/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}
Deposit queries single deposit information based proposalID, depositAddr.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| proposal_id | path | string(uint64) | true | proposal_id defines the unique id of the proposal. |
| depositor | path | string | true | depositor defines the deposit addresses from the proposals. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDepositResponse is the response type for the Query/Deposit RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » deposit | object | false | none | deposit defines the requested deposit. |
| »» proposal_id | string(uint64) | false | none | none |
| »» depositor | string | false | none | none |
The result from the above endpoint looks like this:
{
"tally": {
"yes": "yes...",
"abstain": "abstain...",
"no": "no...",
"no_with_veto": "no_with_veto..."
}
}
|»» amount|[object]|false|none|none| |»»» denom|string|false|none|none| |»»» amount|string|false|none|none|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
TallyResult
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/tally \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/tally', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/gov/v1beta1/proposals/{proposal_id}/tally
TallyResult queries the tally of a proposal vote.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| proposal_id | path | string(uint64) | true | proposal_id defines the unique id of the proposal. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
The result from the above endpoint looks like this:
{
"votes": [
{
"proposal_id": "1000000",
"voter": "voter...",
"option": "option..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
QueryTallyResultResponse is the response type for the Query/Tally RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » tally | object | false | none | TallyResult defines a standard tally for a governance proposal. |
| »» yes | string | false | none | none |
| »» abstain | string | false | none | none |
| »» no | string | false | none | none |
| »» no_with_veto | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Votes
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/votes \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/votes', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/gov/v1beta1/proposals/{proposal_id}/votes
Votes queries votes of a given proposal.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| proposal_id | path | string(uint64) | true | proposal_id defines the unique id of the proposal. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryVotesResponse is the response type for the Query/Votes RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » votes | [object] | false | none | votes defined the queried votes. |
| »» proposal_id | string(uint64) | false | none | none |
| »» voter | string | false | none | none |
| »» option | string | false | none | Deprecated: 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] | false | none | none |
| »»» option | string | false | none | 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. |
| »»» weight | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
The result from the above endpoint looks like this:
{
"vote": {
"proposal_id": "1000000",
"voter": "voter...",
"option": "option...",
"options": [
{
"option": "option...",
"weight": "weight..."
}
]
}
}
|»» next_key|string(byte)|false|none|none| |»» total|string(uint64)|false|none|none|
Enumerated Values
| Property | Value |
|---|---|
| option | VOTE_OPTION_UNSPECIFIED |
| option | VOTE_OPTION_YES |
| option | VOTE_OPTION_ABSTAIN |
| option | VOTE_OPTION_NO |
| option | VOTE_OPTION_NO_WITH_VETO |
| option | VOTE_OPTION_UNSPECIFIED |
| option | VOTE_OPTION_YES |
| option | VOTE_OPTION_ABSTAIN |
| option | VOTE_OPTION_NO |
| option | VOTE_OPTION_NO_WITH_VETO |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Vote
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/votes/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/gov/v1beta1/proposals/string/votes/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}
Vote queries voted information based on proposalID, voterAddr.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| proposal_id | path | string(uint64) | true | proposal_id defines the unique id of the proposal. |
| voter | path | string | true | voter defines the oter address for the proposals. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryVoteResponse is the response type for the Query/Vote RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » vote | object | false | none | vote defined the queried vote. |
| »» proposal_id | string(uint64) | false | none | none |
| »» voter | string | false | none | none |
| »» option | string | false | none | Deprecated: 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] | false | none | none |
| »»» option | string | false | none | 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. |
| »»» weight | string | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| option | VOTE_OPTION_UNSPECIFIED |
| option | VOTE_OPTION_YES |
| option | VOTE_OPTION_ABSTAIN |
| option | VOTE_OPTION_NO |
| option | VOTE_OPTION_NO_WITH_VETO |
| option | VOTE_OPTION_UNSPECIFIED |
| option | VOTE_OPTION_YES |
| option | VOTE_OPTION_ABSTAIN |
| option | VOTE_OPTION_NO |
| option | VOTE_OPTION_NO_WITH_VETO |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Nyks Slashing Module
Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/slashing/v1beta1/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/slashing/v1beta1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"params": {
"signed_blocks_window": "signed_blocks_window...",
"min_signed_per_window": "min_signed_per_window...",
"downtime_jail_duration": "downtime_jail_duration...",
"slash_fraction_double_sign": "slash_fraction_double_sign...",
"slash_fraction_downtime": "slash_fraction_downtime..."
}
}
GET /cosmos/slashing/v1beta1/params
Params queries the parameters of slashing module
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is the response type for the Query/Params RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | Params represents the parameters used for by the slashing module. |
| »» signed_blocks_window | string(int64) | false | none | none |
| »» min_signed_per_window | string(byte) | false | none | none |
| »» downtime_jail_duration | string | false | none | none |
| »» slash_fraction_double_sign | string(byte) | false | none | none |
| »» slash_fraction_downtime | string(byte) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SigningInfos
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/slashing/v1beta1/signing_infos \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/slashing/v1beta1/signing_infos', {
> The result from the above endpoint looks like this:
```json
{
"info": [
{
"address": "0x1234567890abcdef...",
"start_height": "start_height...",
"index_offset": "index_offset..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/slashing/v1beta1/signing_infos
SigningInfos queries signing info of all validators
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QuerySigningInfosResponse is the response type for the Query/SigningInfos RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » info | [object] | false | none | none |
| »» address | string | false | none | none |
| »» start_height | string(int64) | false | none | none |
| »» index_offset | string(int64) | false | none | Index which is incremented each time the validator was a bondedin a block and may have signed a precommit or not. This in conjunction with theSignedBlocksWindow param determines the index in the MissedBlocksBitArray. |
| »» jailed_until | string(date-time) | false | none | Timestamp until which the validator is jailed due to liveness downtime. |
| »» tombstoned | boolean | false | none | Whether or not a validator has been tombstoned (killed out of validator set). It is setonce the validator commits an equivocation or for any other configured misbehiavor. |
| »» missed_blocks_counter | string(int64) | false | none | A counter kept to avoid unnecessary array reads.Note that Sum(MissedBlocksBitArray) always equals MissedBlocksCounter. |
| » pagination | object | false | none | PageResponse 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_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
SigningInfo
Code samples
> The result from the above endpoint looks like this:
```json
{
"val_signing_info": {
"address": "0x1234567890abcdef...",
"start_height": "start_height...",
"index_offset": "index_offset...",
"jailed_until": "jailed_until...",
"tombstoned": true,
"missed_blocks_counter": "missed_blocks_counter..."
}
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/slashing/v1beta1/signing_infos/string \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/slashing/v1beta1/signing_infos/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/slashing/v1beta1/signing_infos/{cons_address}
SigningInfo queries the signing info of given cons address
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| cons_address | path | string | true | cons_address is the address to query signing info of |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QuerySigningInfoResponse is the response type for the Query/SigningInfo RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » val_signing_info | object | false | none | ValidatorSigningInfo defines a validator's signing info for monitoring theirliveness activity. |
| »» address | string | false | none | none |
| »» start_height | string(int64) | false | none | none |
| »» index_offset | string(int64) | false | none | Index which is incremented each time the validator was a bondedin a block and may have signed a precommit or not. This in conjunction with theSignedBlocksWindow param determines the index in the MissedBlocksBitArray. |
| »» jailed_until | string(date-time) | false | none | Timestamp until which the validator is jailed due to liveness downtime. |
| »» tombstoned | boolean | false | none | Whether or not a validator has been tombstoned (killed out of validator set). It is setonce the validator commits an equivocation or for any other configured misbehiavor. |
| »» missed_blocks_counter | string(int64) | false | none | A counter kept to avoid unnecessary array reads.Note that Sum(MissedBlocksBitArray) always equals MissedBlocksCounter. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
Nyks Staking Module
DelegatorDelegations
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/delegations/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/delegations/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"delegation_responses": [
{
"delegation": {
"delegator_address": "0x1234567890abcdef...",
"validator_address": "0x1234567890abcdef...",
"shares": "shares..."
},
"balance": {
"denom": "denom...",
"amount": "1000"
}
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
GET /cosmos/staking/v1beta1/delegations/{delegator_addr}
DelegatorDelegations queries all delegations of a given delegator address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_addr | path | string | true | delegator_addr defines the delegator address to query for. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegatorDelegationsResponse is response type for the Query/DelegatorDelegations RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » delegation_responses | [object] | false | none | delegation_responses defines all the delegations' info of a delegator. |
| »» delegation | object | false | none | Delegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator. |
| »»» delegator_address | string | false | none | delegator_address is the bech32-encoded address of the delegator. |
| »»» validator_address | string | false | none | validator_address is the bech32-encoded address of the validator. |
| »»» shares | string | false | none | shares define the delegation shares received. |
| »» balance | object | false | none | Coin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto. |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Redelegations
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/redelegations \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/redelegations', {
> The result from the above endpoint looks like this:
```json
{
"redelegation_responses": [
{
"redelegation": {
"delegator_address": "0x1234567890abcdef...",
"validator_src_address": "0x1234567890abcdef...",
"validator_dst_address": "0x1234567890abcdef..."
},
"entries": [
{
"redelegation_entry": {
"creation_height": "creation_height...",
"completion_time": "completion_time...",
"initial_balance": "initial_balance..."
},
"balance": "balance..."
}
]
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations
Redelegations queries redelegations of given address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_addr | path | string | true | delegator_addr defines the delegator address to query for. |
| src_validator_addr | query | string | false | src_validator_addr defines the validator address to redelegate from. |
| dst_validator_addr | query | string | false | dst_validator_addr defines the validator address to redelegate to. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryRedelegationsResponse is response type for the Query/Redelegations RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » redelegation_responses | [object] | false | none | none |
| »» redelegation | object | false | none | Redelegation contains the list of a particular delegator's redelegating bondsfrom a particular source validator to a particular destination validator. |
| »»» delegator_address | string | false | none | delegator_address is the bech32-encoded address of the delegator. |
| »»» validator_src_address | string | false | none | validator_src_address is the validator redelegation source operator address. |
| »»» validator_dst_address | string | false | none | validator_dst_address is the validator redelegation destination operator address. |
| »»» entries | [object] | false | none | entries are the redelegation entries.redelegation entries |
| »»»» creation_height | string(int64) | false | none | creation_height defines the height which the redelegation took place. |
| »»»» completion_time | string(date-time) | false | none | completion_time defines the unix time for redelegation completion. |
| »»»» initial_balance | string | false | none | initial_balance defines the initial balance when redelegation started. |
| »»»» shares_dst | string | false | none | shares_dst is the amount of destination-validator shares created by redelegation. |
| »» entries | [object] | false | none | none |
| »»» redelegation_entry | object | false | none | RedelegationEntry defines a redelegation object with relevant metadata. |
| »»»» creation_height | string(int64) | false | none | creation_height defines the height which the redelegation took place. |
| »»»» completion_time | string(date-time) | false | none | completion_time defines the unix time for redelegation completion. |
| »»»» initial_balance | string | false | none | initial_balance defines the initial balance when redelegation started. |
| »»»» shares_dst | string | false | none | shares_dst is the amount of destination-validator shares created by redelegation. |
| »»» balance | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
DelegatorUnbondingDelegations
Code samples
> The result from the above endpoint looks like this:
```json
{
"unbonding_responses": [
{
"delegator_address": "0x1234567890abcdef...",
"validator_address": "0x1234567890abcdef...",
"entries": [
{
"creation_height": "creation_height...",
"completion_time": "completion_time...",
"initial_balance": "initial_balance..."
}
]
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/unbonding_delegations \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/unbonding_delegations', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations
DelegatorUnbondingDelegations queries all unbonding delegations of a given delegator address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_addr | path | string | true | delegator_addr defines the delegator address to query for. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryUnbondingDelegatorDelegationsResponse is response type for the Query/UnbondingDelegatorDelegations RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » unbonding_responses | [object] | false | none | none |
| »» delegator_address | string | false | none | delegator_address is the bech32-encoded address of the delegator. |
| »» validator_address | string | false | none | validator_address is the bech32-encoded address of the validator. |
| »» entries | [object] | false | none | entries are the unbonding delegation entries.unbonding delegation entries |
| »»» creation_height | string(int64) | false | none | creation_height is the height which the unbonding took place. |
| »»» completion_time | string(date-time) | false | none | completion_time is the unix time for unbonding completion. |
| »»» initial_balance | string | false | none | initial_balance defines the tokens initially scheduled to receive at completion. |
| »»» balance | string | false | none | balance defines the tokens to receive at completion. |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"validators": [
{
"operator_address": "0x1234567890abcdef...",
"consensus_pubkey": {
"@type": "@type..."
},
"jailed": true
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
This operation does not require authentication
DelegatorValidators
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/validators \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/validators', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators
DelegatorValidators queries all validators info for given delegator address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_addr | path | string | true | delegator_addr defines the delegator address to query for. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegatorValidatorsResponse is response type for the Query/DelegatorValidators RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » validators | [object] | false | none | validators defines the the validators' info of a delegator. |
| »» operator_address | string | false | none | operator_address defines the address of the validator's operator; bech encoded in JSON. |
| »» consensus_pubkey | object | false | none | consensus_pubkey is the consensus public key of the validator, as a Protobuf Any. |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» jailed | boolean | false | none | jailed defined whether the validator has been jailed from bonded status or not. |
| »» status | string | false | none | status is the validator status (bonded/unbonding/unbonded). |
| »» tokens | string | false | none | tokens define the delegated tokens (incl. self-delegation). |
| »» delegator_shares | string | false | none | delegator_shares defines total shares issued to a validator's delegators. |
| »» description | object | false | none | description defines the description terms for the validator. |
| »»» moniker | string | false | none | moniker defines a human-readable name for the validator. |
| »»» identity | string | false | none | identity defines an optional identity signature (ex. UPort or Keybase). |
| »»» website | string | false | none | website defines an optional website link. |
| »»» security_contact | string | false | none | security_contact defines an optional email for security contact. |
| »»» details | string | false | none | details define other optional details. |
| »» unbonding_height | string(int64) | false | none | unbonding_height defines, if unbonding, the height at which this validator has begun unbonding. |
| »» unbonding_time | string(date-time) | false | none | unbonding_time defines, if unbonding, the min time for the validator to complete unbonding. |
| »» commission | object | false | none | commission defines the commission parameters. |
| »»» commission_rates | object | false | none | commission_rates defines the initial commission rates to be used for creating a validator. |
| »»»» rate | string | false | none | rate is the commission rate charged to delegators, as a fraction. |
| »»»» max_rate | string | false | none | max_rate defines the maximum commission rate which validator can ever charge, as a fraction. |
| »»»» max_change_rate | string | false | none | max_change_rate defines the maximum daily increase of the validator commission, as a fraction. |
| »»» update_time | string(date-time) | false | none | update_time is the last time the commission rate was changed. |
| »» min_self_delegation | string | false | none | min_self_delegation is the validator's self declared minimum self delegation. |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| status | BOND_STATUS_UNSPECIFIED |
| status | BOND_STATUS_UNBONDED |
| status | BOND_STATUS_UNBONDING |
| status | BOND_STATUS_BONDED |
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"validator": {
"operator_address": "0x1234567890abcdef...",
"consensus_pubkey": {
"@type": "@type..."
},
"jailed": true,
"status": "status...",
"tokens": "tokens...",
"delegator_shares": "delegator_shares...",
"description": {
"moniker": "moniker...",
"identity": "0x1234567890abcdef...",
"website": "website..."
},
"unbonding_height": "unbonding_height...",
"unbonding_time": "unbonding_time...",
"commission": {
"commission_rates": {
"rate": "rate...",
"max_rate": "max_rate...",
"max_change_rate": "max_change_rate..."
},
"update_time": "update_time..."
},
"min_self_delegation": "min_self_delegation..."
}
}
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» additionalProperties|any|false|none|none|
|»» @type|string|false|none|A 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.|
This operation does not require authentication
DelegatorValidator
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/validators/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/delegators/string/validators/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}
DelegatorValidator queries validator info for given delegator validator pair.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| delegator_addr | path | string | true | delegator_addr defines the delegator address to query for. |
| validator_addr | path | string | true | validator_addr defines the validator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegatorValidatorResponse response type for the Query/DelegatorValidator RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » validator | object | false | none | validator defines the the validator info. |
| »» operator_address | string | false | none | operator_address defines the address of the validator's operator; bech encoded in JSON. |
| »» consensus_pubkey | object | false | none | consensus_pubkey is the consensus public key of the validator, as a Protobuf Any. |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» jailed | boolean | false | none | jailed defined whether the validator has been jailed from bonded status or not. |
| »» status | string | false | none | status is the validator status (bonded/unbonding/unbonded). |
| »» tokens | string | false | none | tokens define the delegated tokens (incl. self-delegation). |
| »» delegator_shares | string | false | none | delegator_shares defines total shares issued to a validator's delegators. |
| »» description | object | false | none | description defines the description terms for the validator. |
| »»» moniker | string | false | none | moniker defines a human-readable name for the validator. |
| »»» identity | string | false | none | identity defines an optional identity signature (ex. UPort or Keybase). |
| »»» website | string | false | none | website defines an optional website link. |
| »»» security_contact | string | false | none | security_contact defines an optional email for security contact. |
| »»» details | string | false | none | details define other optional details. |
| »» unbonding_height | string(int64) | false | none | unbonding_height defines, if unbonding, the height at which this validator has begun unbonding. |
| »» unbonding_time | string(date-time) | false | none | unbonding_time defines, if unbonding, the min time for the validator to complete unbonding. |
| »» commission | object | false | none | commission defines the commission parameters. |
| »»» commission_rates | object | false | none | commission_rates defines the initial commission rates to be used for creating a validator. |
| »»»» rate | string | false | none | rate is the commission rate charged to delegators, as a fraction. |
| »»»» max_rate | string | false | none | max_rate defines the maximum commission rate which validator can ever charge, as a fraction. |
| »»»» max_change_rate | string | false | none | max_change_rate defines the maximum daily increase of the validator commission, as a fraction. |
| »»» update_time | string(date-time) | false | none | update_time is the last time the commission rate was changed. |
| »» min_self_delegation | string | false | none | min_self_delegation is the validator's self declared minimum self delegation. |
Enumerated Values
| Property | Value |
|---|---|
| status | BOND_STATUS_UNSPECIFIED |
The result from the above endpoint looks like this:
{
"hist": {
"header": {
"version": {
"block": "1000000",
"app": "1000000"
},
"chain_id": "0x1234567890abcdef...",
"height": "height..."
},
"valset": [
{
"operator_address": "0x1234567890abcdef...",
"consensus_pubkey": {
"@type": "@type..."
},
"jailed": true
}
]
}
}
|status|BOND_STATUS_UNBONDED| |status|BOND_STATUS_UNBONDING| |status|BOND_STATUS_BONDED|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
HistoricalInfo
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/historical_info/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/historical_info/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/historical_info/{height}
HistoricalInfo queries the historical info for given height.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| height | path | string(int64) | true | height defines at which height to query the historical info. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryHistoricalInfoResponse is response type for the Query/HistoricalInfo RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » hist | object | false | none | hist defines the historical info at the given height. |
| »» header | object | false | none | Header defines the structure of a Tendermint block header. |
| »»» version | object | false | none | Consensus 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. |
| »»»» block | string(uint64) | false | none | none |
| »»»» app | string(uint64) | false | none | none |
| »»» chain_id | string | false | none | none |
| »»» height | string(int64) | false | none | none |
| »»» time | string(date-time) | false | none | none |
| »»» last_block_id | object | false | none | none |
| »»»» hash | string(byte) | false | none | none |
| »»»» part_set_header | object | false | none | none |
| »»»»» total | integer(int64) | false | none | none |
| »»»»» hash | string(byte) | false | none | none |
| »»» last_commit_hash | string(byte) | false | none | commit from validators from the last block |
| »»» data_hash | string(byte) | false | none | none |
| »»» validators_hash | string(byte) | false | none | validators for the current block |
| »»» next_validators_hash | string(byte) | false | none | none |
| »»» consensus_hash | string(byte) | false | none | none |
| »»» app_hash | string(byte) | false | none | none |
| »»» last_results_hash | string(byte) | false | none | none |
| »»» evidence_hash | string(byte) | false | none | evidence included in the block |
| »»» proposer_address | string(byte) | false | none | none |
| »» valset | [object] | false | none | none |
| »»» operator_address | string | false | none | operator_address defines the address of the validator's operator; bech encoded in JSON. |
| »»» consensus_pubkey | object | false | none | consensus_pubkey is the consensus public key of the validator, as a Protobuf Any. |
| »»»» additionalProperties | any | false | none | none |
| »»»» @type | string | false | none | A 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. |
| »»» jailed | boolean | false | none | jailed defined whether the validator has been jailed from bonded status or not. |
| »»» status | string | false | none | status is the validator status (bonded/unbonding/unbonded). |
| »»» tokens | string | false | none | tokens define the delegated tokens (incl. self-delegation). |
| »»» delegator_shares | string | false | none | delegator_shares defines total shares issued to a validator's delegators. |
| »»» description | object | false | none | description defines the description terms for the validator. |
| »»»» moniker | string | false | none | moniker defines a human-readable name for the validator. |
| »»»» identity | string | false | none | identity defines an optional identity signature (ex. UPort or Keybase). |
| »»»» website | string | false | none | website defines an optional website link. |
| »»»» security_contact | string | false | none | security_contact defines an optional email for security contact. |
| »»»» details | string | false | none | details define other optional details. |
| »»» unbonding_height | string(int64) | false | none | unbonding_height defines, if unbonding, the height at which this validator has begun unbonding. |
| »»» unbonding_time | string(date-time) | false | none | unbonding_time defines, if unbonding, the min time for the validator to complete unbonding. |
| »»» commission | object | false | none | commission defines the commission parameters. |
| »»»» commission_rates | object | false | none | commission_rates defines the initial commission rates to be used for creating a validator. |
| »»»»» rate | string | false | none | rate is the commission rate charged to delegators, as a fraction. |
| »»»»» max_rate | string | false | none | max_rate defines the maximum commission rate which validator can ever charge, as a fraction. |
| »»»»» max_change_rate | string | false | none | max_change_rate defines the maximum daily increase of the validator commission, as a fraction. |
| »»»» update_time | string(date-time) | false | none | update_time is the last time the commission rate was changed. |
The result from the above endpoint looks like this:
{
"params": {
"unbonding_time": "unbonding_time...",
"max_validators": 0,
"max_entries": 0,
"historical_entries": 0,
"bond_denom": "bond_denom..."
}
}
|»»» min_self_delegation|string|false|none|min_self_delegation is the validator's self declared minimum self delegation.|
Enumerated Values
| Property | Value |
|---|---|
| status | BOND_STATUS_UNSPECIFIED |
| status | BOND_STATUS_UNBONDED |
| status | BOND_STATUS_UNBONDING |
| status | BOND_STATUS_BONDED |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/params
Parameters queries the staking parameters.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|
The result from the above endpoint looks like this:
{
"pool": {
"not_bonded_tokens": "not_bonded_tokens...",
"bonded_tokens": "bonded_tokens..."
}
}
|200|OK|A successful response.|Inline| |default|Default|An unexpected error response.|Inline|
Response Schema
Status Code 200
QueryParamsResponse is response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params holds all the parameters of this module. |
| »» unbonding_time | string | false | none | unbonding_time is the time duration of unbonding. |
| »» max_validators | integer(int64) | false | none | max_validators is the maximum number of validators. |
| »» max_entries | integer(int64) | false | none | max_entries is the max entries for either unbonding delegation or redelegation (per pair/trio). |
| »» historical_entries | integer(int64) | false | none | historical_entries is the number of historical entries to persist. |
| »» bond_denom | string | false | none | bond_denom defines the bondable coin denomination. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Pool
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/pool \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/pool', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/pool
The result from the above endpoint looks like this:
{
"validators": [
{
"operator_address": "0x1234567890abcdef...",
"consensus_pubkey": {
"@type": "@type..."
},
"jailed": true
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
Pool queries the pool info.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryPoolResponse is response type for the Query/Pool RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » pool | object | false | none | pool defines the pool info. |
| »» not_bonded_tokens | string | false | none | none |
| »» bonded_tokens | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Validators
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/validators \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/validators', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/validators
Validators queries all validators that match the given status.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| status | query | string | false | status enables to query for validators matching a given status. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryValidatorsResponse is response type for the Query/Validators RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » validators | [object] | false | none | validators contains all the queried validators. |
| »» operator_address | string | false | none | operator_address defines the address of the validator's operator; bech encoded in JSON. |
| »» consensus_pubkey | object | false | none | consensus_pubkey is the consensus public key of the validator, as a Protobuf Any. |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"validator": {
"operator_address": "0x1234567890abcdef...",
"consensus_pubkey": {
"@type": "@type..."
},
"jailed": true,
"status": "status...",
"tokens": "tokens...",
"delegator_shares": "delegator_shares...",
"description": {
"moniker": "moniker...",
"identity": "0x1234567890abcdef...",
"website": "website..."
},
"unbonding_height": "unbonding_height...",
"unbonding_time": "unbonding_time...",
"commission": {
"commission_rates": {
"rate": "rate...",
"max_rate": "max_rate...",
"max_change_rate": "max_change_rate..."
},
"update_time": "update_time..."
},
"min_self_delegation": "min_self_delegation..."
}
}
|»» jailed|boolean|false|none|jailed defined whether the validator has been jailed from bonded status or not.| |»» status|string|false|none|status is the validator status (bonded/unbonding/unbonded).| |»» tokens|string|false|none|tokens define the delegated tokens (incl. self-delegation).| |»» delegator_shares|string|false|none|delegator_shares defines total shares issued to a validator's delegators.| |»» description|object|false|none|description defines the description terms for the validator.| |»»» moniker|string|false|none|moniker defines a human-readable name for the validator.| |»»» identity|string|false|none|identity defines an optional identity signature (ex. UPort or Keybase).| |»»» website|string|false|none|website defines an optional website link.| |»»» security_contact|string|false|none|security_contact defines an optional email for security contact.| |»»» details|string|false|none|details define other optional details.| |»» unbonding_height|string(int64)|false|none|unbonding_height defines, if unbonding, the height at which this validator has begun unbonding.| |»» unbonding_time|string(date-time)|false|none|unbonding_time defines, if unbonding, the min time for the validator to complete unbonding.| |»» commission|object|false|none|commission defines the commission parameters.| |»»» commission_rates|object|false|none|commission_rates defines the initial commission rates to be used for creating a validator.| |»»»» rate|string|false|none|rate is the commission rate charged to delegators, as a fraction.| |»»»» max_rate|string|false|none|max_rate defines the maximum commission rate which validator can ever charge, as a fraction.| |»»»» max_change_rate|string|false|none|max_change_rate defines the maximum daily increase of the validator commission, as a fraction.| |»»» update_time|string(date-time)|false|none|update_time is the last time the commission rate was changed.| |»» min_self_delegation|string|false|none|min_self_delegation is the validator's self declared minimum self delegation.| |» pagination|object|false|none|pagination defines the pagination in the response.| |»» next_key|string(byte)|false|none|none| |»» total|string(uint64)|false|none|none|
Enumerated Values
| Property | Value |
|---|---|
| status | BOND_STATUS_UNSPECIFIED |
| status | BOND_STATUS_UNBONDED |
| status | BOND_STATUS_UNBONDING |
| status | BOND_STATUS_BONDED |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Validator
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/validators/{validator_addr}
Validator queries validator info for given validator address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_addr | path | string | true | validator_addr defines the validator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
The result from the above endpoint looks like this:
{
"delegation_responses": [
{
"delegation": {
"delegator_address": "0x1234567890abcdef...",
"validator_address": "0x1234567890abcdef...",
"shares": "shares..."
},
"balance": {
"denom": "denom...",
"amount": "1000"
}
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
QueryValidatorResponse is response type for the Query/Validator RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » validator | object | false | none | validator defines the the validator info. |
| »» operator_address | string | false | none | operator_address defines the address of the validator's operator; bech encoded in JSON. |
| »» consensus_pubkey | object | false | none | consensus_pubkey is the consensus public key of the validator, as a Protobuf Any. |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» jailed | boolean | false | none | jailed defined whether the validator has been jailed from bonded status or not. |
| »» status | string | false | none | status is the validator status (bonded/unbonding/unbonded). |
| »» tokens | string | false | none | tokens define the delegated tokens (incl. self-delegation). |
| »» delegator_shares | string | false | none | delegator_shares defines total shares issued to a validator's delegators. |
| »» description | object | false | none | description defines the description terms for the validator. |
| »»» moniker | string | false | none | moniker defines a human-readable name for the validator. |
| »»» identity | string | false | none | identity defines an optional identity signature (ex. UPort or Keybase). |
| »»» website | string | false | none | website defines an optional website link. |
| »»» security_contact | string | false | none | security_contact defines an optional email for security contact. |
| »»» details | string | false | none | details define other optional details. |
| »» unbonding_height | string(int64) | false | none | unbonding_height defines, if unbonding, the height at which this validator has begun unbonding. |
| »» unbonding_time | string(date-time) | false | none | unbonding_time defines, if unbonding, the min time for the validator to complete unbonding. |
| »» commission | object | false | none | commission defines the commission parameters. |
| »»» commission_rates | object | false | none | commission_rates defines the initial commission rates to be used for creating a validator. |
| »»»» rate | string | false | none | rate is the commission rate charged to delegators, as a fraction. |
| »»»» max_rate | string | false | none | max_rate defines the maximum commission rate which validator can ever charge, as a fraction. |
| »»»» max_change_rate | string | false | none | max_change_rate defines the maximum daily increase of the validator commission, as a fraction. |
| »»» update_time | string(date-time) | false | none | update_time is the last time the commission rate was changed. |
| »» min_self_delegation | string | false | none | min_self_delegation is the validator's self declared minimum self delegation. |
Enumerated Values
| Property | Value |
|---|---|
| status | BOND_STATUS_UNSPECIFIED |
| status | BOND_STATUS_UNBONDED |
| status | BOND_STATUS_UNBONDING |
| status | BOND_STATUS_BONDED |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
ValidatorDelegations
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/delegations \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/delegations', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations
ValidatorDelegations queries delegate info for given validator.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_addr | path | string | true | validator_addr defines the validator address to query for. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
The result from the above endpoint looks like this:
{
"delegation_response": {
"delegation": {
"delegator_address": "0x1234567890abcdef...",
"validator_address": "0x1234567890abcdef...",
"shares": "shares..."
},
"balance": {
"denom": "denom...",
"amount": "1000"
}
}
}
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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryValidatorDelegationsResponse is response type for the Query/ValidatorDelegations RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » delegation_responses | [object] | false | none | none |
| »» delegation | object | false | none | Delegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator. |
| »»» delegator_address | string | false | none | delegator_address is the bech32-encoded address of the delegator. |
| »»» validator_address | string | false | none | validator_address is the bech32-encoded address of the validator. |
| »»» shares | string | false | none | shares define the delegation shares received. |
| »» balance | object | false | none | Coin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto. |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Delegation
Code samples
curl --request GET \
> The result from the above endpoint looks like this:
```json
{
"unbond": {
"delegator_address": "0x1234567890abcdef...",
"validator_address": "0x1234567890abcdef...",
"entries": [
{
"creation_height": "creation_height...",
"completion_time": "completion_time...",
"initial_balance": "initial_balance..."
}
]
}
}
--url https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/delegations/string \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/delegations/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}
Delegation queries delegate info for given validator delegator pair.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_addr | path | string | true | validator_addr defines the validator address to query for. |
| delegator_addr | path | string | true | delegator_addr defines the delegator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegationResponse is response type for the Query/Delegation RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » delegation_response | object | false | none | delegation_responses defines the delegation info of a delegation. |
| »» delegation | object | false | none | Delegation represents the bond with tokens held by an account. It isowned by one delegator, and is associated with the voting power of onevalidator. |
| »»» delegator_address | string | false | none | delegator_address is the bech32-encoded address of the delegator. |
| »»» validator_address | string | false | none | validator_address is the bech32-encoded address of the validator. |
| »»» shares | string | false | none | shares define the delegation shares received. |
| »» balance | object | false | none | Coin defines a token with a denomination and an amount.NOTE: The amount field is an Int which implements the custom methodsignatures required by gogoproto. |
| »»» denom | string | false | none | none |
| »»» amount | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
UnbondingDelegation
The result from the above endpoint looks like this:
{
"unbonding_responses": [
{
"delegator_address": "0x1234567890abcdef...",
"validator_address": "0x1234567890abcdef...",
"entries": [
{
"creation_height": "creation_height...",
"completion_time": "completion_time...",
"initial_balance": "initial_balance..."
}
]
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/delegations/string/unbonding_delegation \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/delegations/string/unbonding_delegation', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation
UnbondingDelegation queries unbonding info for given validator delegator pair.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_addr | path | string | true | validator_addr defines the validator address to query for. |
| delegator_addr | path | string | true | delegator_addr defines the delegator address to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDelegationResponse is response type for the Query/UnbondingDelegation RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » unbond | object | false | none | unbond defines the unbonding information of a delegation. |
| »» delegator_address | string | false | none | delegator_address is the bech32-encoded address of the delegator. |
| »» validator_address | string | false | none | validator_address is the bech32-encoded address of the validator. |
| »» entries | [object] | false | none | entries are the unbonding delegation entries.unbonding delegation entries |
| »»» creation_height | string(int64) | false | none | creation_height is the height which the unbonding took place. |
| »»» completion_time | string(date-time) | false | none | completion_time is the unix time for unbonding completion. |
| »»» initial_balance | string | false | none | initial_balance defines the tokens initially scheduled to receive at completion. |
| »»» balance | string | false | none | balance defines the tokens to receive at completion. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
ValidatorUnbondingDelegations
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/unbonding_delegations \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/staking/v1beta1/validators/string/unbonding_delegations', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations
ValidatorUnbondingDelegations queries unbonding delegations of a validator.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| validator_addr | path | string | true | validator_addr defines the validator address to query for. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryValidatorUnbondingDelegationsResponse is response type for the Query/ValidatorUnbondingDelegations RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » unbonding_responses | [object] | false | none | none |
| »» delegator_address | string | false | none | delegator_address is the bech32-encoded address of the delegator. |
| »» validator_address | string | false | none | validator_address is the bech32-encoded address of the validator. |
| »» entries | [object] | false | none | entries are the unbonding delegation entries.unbonding delegation entries |
| »»» creation_height | string(int64) | false | none | creation_height is the height which the unbonding took place. |
| »»» completion_time | string(date-time) | false | none | completion_time is the unix time for unbonding completion. |
| »»» initial_balance | string | false | none | initial_balance defines the tokens initially scheduled to receive at completion. |
| »»» balance | string | false | none | balance defines the tokens to receive at completion. |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Nyks Tendermint Module
CosmosBaseTendermintV1Beta1GetLatestBlock
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/blocks/latest \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/blocks/latest', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"block_id": {
"hash": "0x1234567890abcdef...",
"part_set_header": {
"total": 0,
"hash": "0x1234567890abcdef..."
}
},
"block": {
"header": {
"version": {
"block": "1000000",
"app": "1000000"
},
"chain_id": "0x1234567890abcdef...",
"height": "height..."
},
"data": {
"txs": [
"item..."
]
},
"evidence": {
"evidence": [
{
"duplicate_vote_evidence": {
"vote_a": {
"type": "type...",
"height": "height...",
"round": 0
},
"vote_b": {
"type": "type...",
"height": "height...",
"round": 0
},
"total_voting_power": "total_voting_power..."
},
"light_client_attack_evidence": {
"conflicting_block": {
"signed_header": {
"header": {
"version": {
"block": "1000000",
"app": "1000000"
},
"chain_id": "0x1234567890abcdef...",
"height": "height..."
},
"commit": {
"height": "height...",
"round": 0,
"block_id": {
"hash": "0x1234567890abcdef...",
"part_set_header": {
"total": 0,
"hash": "0x1234567890abcdef..."
}
}
}
},
"validator_set": {
"validators": [
{
"address": "0x1234567890abcdef...",
"pub_key": {
"ed25519": "ed25519...",
"secp256k1": "secp256k1..."
},
"voting_power": "voting_power..."
}
],
"proposer": {
"address": "0x1234567890abcdef...",
"pub_key": {
"ed25519": "ed25519...",
"secp256k1": "secp256k1..."
},
"voting_power": "voting_power..."
},
"total_voting_power": "total_voting_power..."
}
},
"common_height": "common_height...",
"byzantine_validators": [
{
"address": "0x1234567890abcdef...",
"pub_key": {
"ed25519": "ed25519...",
"secp256k1": "secp256k1..."
},
"voting_power": "voting_power..."
}
]
}
}
]
}
}
}
GET /cosmos/base/tendermint/v1beta1/blocks/latest
GetLatestBlock returns the latest block.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
GetLatestBlockResponse is the response type for the Query/GetLatestBlock RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » block_id | object | false | none | none |
| »» hash | string(byte) | false | none | none |
| »» part_set_header | object | false | none | none |
| »»» total | integer(int64) | false | none | none |
| »»» hash | string(byte) | false | none | none |
| » block | object | false | none | none |
| »» header | object | false | none | Header defines the structure of a Tendermint block header. |
| »»» version | object | false | none | Consensus 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. |
| »»»» block | string(uint64) | false | none | none |
| »»»» app | string(uint64) | false | none | none |
| »»» chain_id | string | false | none | none |
| »»» height | string(int64) | false | none | none |
| »»» time | string(date-time) | false | none | none |
| »»» last_block_id | object | false | none | none |
| »»»» hash | string(byte) | false | none | none |
| »»»» part_set_header | object | false | none | none |
| »»»»» total | integer(int64) | false | none | none |
| »»»»» hash | string(byte) | false | none | none |
| »»» last_commit_hash | string(byte) | false | none | commit from validators from the last block |
| »»» data_hash | string(byte) | false | none | none |
| »»» validators_hash | string(byte) | false | none | validators for the current block |
| »»» next_validators_hash | string(byte) | false | none | none |
| »»» consensus_hash | string(byte) | false | none | none |
| »»» app_hash | string(byte) | false | none | none |
| »»» last_results_hash | string(byte) | false | none | none |
| »»» evidence_hash | string(byte) | false | none | evidence included in the block |
| »»» proposer_address | string(byte) | false | none | none |
| »» data | object | false | none | none |
| »»» txs | [string] | false | none | Txs 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. |
| »» evidence | object | false | none | none |
| »»» evidence | [object] | false | none | none |
| »»»» duplicate_vote_evidence | object | false | none | DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. |
| »»»»» vote_a | object | false | none | Vote represents a prevote, precommit, or commit vote from validators forconsensus. |
| »»»»»» type | string | false | none | SignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals |
| »»»»»» height | string(int64) | false | none | none |
| »»»»»» round | integer(int32) | false | none | none |
| »»»»»» block_id | object | false | none | zero if vote is nil. |
| »»»»»»» hash | string(byte) | false | none | none |
| »»»»»»» part_set_header | object | false | none | none |
| »»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»» hash | string(byte) | false | none | none |
| »»»»»» timestamp | string(date-time) | false | none | none |
| »»»»»» validator_address | string(byte) | false | none | none |
| »»»»»» validator_index | integer(int32) | false | none | none |
| »»»»»» signature | string(byte) | false | none | none |
| »»»»» vote_b | object | false | none | Vote represents a prevote, precommit, or commit vote from validators forconsensus. |
| »»»»»» type | string | false | none | SignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals |
| »»»»»» height | string(int64) | false | none | none |
| »»»»»» round | integer(int32) | false | none | none |
| »»»»»» block_id | object | false | none | zero if vote is nil. |
| »»»»»»» hash | string(byte) | false | none | none |
| »»»»»»» part_set_header | object | false | none | none |
| »»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»» hash | string(byte) | false | none | none |
| »»»»»» timestamp | string(date-time) | false | none | none |
| »»»»»» validator_address | string(byte) | false | none | none |
| »»»»»» validator_index | integer(int32) | false | none | none |
| »»»»»» signature | string(byte) | false | none | none |
| »»»»» total_voting_power | string(int64) | false | none | none |
| »»»»» validator_power | string(int64) | false | none | none |
| »»»»» timestamp | string(date-time) | false | none | none |
| »»»» light_client_attack_evidence | object | false | none | LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. |
| »»»»» conflicting_block | object | false | none | none |
| »»»»»» signed_header | object | false | none | none |
| »»»»»»» header | object | false | none | Header defines the structure of a Tendermint block header. |
| »»»»»»»» version | object | false | none | Consensus 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. |
| »»»»»»»»» block | string(uint64) | false | none | none |
| »»»»»»»»» app | string(uint64) | false | none | none |
| »»»»»»»» chain_id | string | false | none | none |
| »»»»»»»» height | string(int64) | false | none | none |
| »»»»»»»» time | string(date-time) | false | none | none |
| »»»»»»»» last_block_id | object | false | none | none |
| »»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»»» part_set_header | object | false | none | none |
| »»»»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»» last_commit_hash | string(byte) | false | none | commit from validators from the last block |
| »»»»»»»» data_hash | string(byte) | false | none | none |
| »»»»»»»» validators_hash | string(byte) | false | none | validators for the current block |
| »»»»»»»» next_validators_hash | string(byte) | false | none | none |
| »»»»»»»» consensus_hash | string(byte) | false | none | none |
| »»»»»»»» app_hash | string(byte) | false | none | none |
| »»»»»»»» last_results_hash | string(byte) | false | none | none |
| »»»»»»»» evidence_hash | string(byte) | false | none | evidence included in the block |
| »»»»»»»» proposer_address | string(byte) | false | none | none |
| »»»»»»» commit | object | false | none | Commit contains the evidence that a block was committed by a set of validators. |
| »»»»»»»» height | string(int64) | false | none | none |
| »»»»»»»» round | integer(int32) | false | none | none |
| »»»»»»»» block_id | object | false | none | none |
| »»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»»» part_set_header | object | false | none | none |
| »»»»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»» signatures | [object] | false | none | none |
| »»»»»»»»» block_id_flag | string | false | none | none |
| »»»»»»»»» validator_address | string(byte) | false | none | none |
| »»»»»»»»» timestamp | string(date-time) | false | none | none |
| »»»»»»»»» signature | string(byte) | false | none | none |
| »»»»»» validator_set | object | false | none | none |
| »»»»»»» validators | [object] | false | none | none |
| »»»»»»»» address | string(byte) | false | none | none |
| »»»»»»»» pub_key | object | false | none | none |
| »»»»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»»»» voting_power | string(int64) | false | none | none |
| »»»»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»»»» proposer | object | false | none | none |
| »»»»»»»» address | string(byte) | false | none | none |
| »»»»»»»» pub_key | object | false | none | none |
| »»»»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»»»» voting_power | string(int64) | false | none | none |
| »»»»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»»»» total_voting_power | string(int64) | false | none | none |
| »»»»» common_height | string(int64) | false | none | none |
| »»»»» byzantine_validators | [object] | false | none | none |
| »»»»»» address | string(byte) | false | none | none |
| »»»»»» pub_key | object | false | none | none |
| »»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»» voting_power | string(int64) | false | none | none |
| »»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»» total_voting_power | string(int64) | false | none | none |
| »»»»» timestamp | string(date-time) | false | none | none |
| »» last_commit | object | false | none | Commit contains the evidence that a block was committed by a set of validators. |
| »»» height | string(int64) | false | none | none |
| »»» round | integer(int32) | false | none | none |
| »»» block_id | object | false | none | none |
| »»»» hash | string(byte) | false | none | none |
| »»»» part_set_header | object | false | none | none |
| »»»»» total | integer(int64) | false | none | none |
| »»»»» hash | string(byte) | false | none | none |
| »»» signatures | [object] | false | none | none |
| »»»» block_id_flag | string | false | none | none |
| »»»» validator_address | string(byte) | false | none | none |
| »»»» timestamp | string(date-time) | false | none | none |
| »»»» signature | string(byte) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| type | SIGNED_MSG_TYPE_UNKNOWN |
| type | SIGNED_MSG_TYPE_PREVOTE |
| type | SIGNED_MSG_TYPE_PRECOMMIT |
| type | SIGNED_MSG_TYPE_PROPOSAL |
| type | SIGNED_MSG_TYPE_UNKNOWN |
| type | SIGNED_MSG_TYPE_PREVOTE |
| type | SIGNED_MSG_TYPE_PRECOMMIT |
| type | SIGNED_MSG_TYPE_PROPOSAL |
| block_id_flag | BLOCK_ID_FLAG_UNKNOWN |
| block_id_flag | BLOCK_ID_FLAG_ABSENT |
| block_id_flag | BLOCK_ID_FLAG_COMMIT |
| block_id_flag | BLOCK_ID_FLAG_NIL |
| block_id_flag | BLOCK_ID_FLAG_UNKNOWN |
| block_id_flag | BLOCK_ID_FLAG_ABSENT |
| block_id_flag | BLOCK_ID_FLAG_COMMIT |
| block_id_flag | BLOCK_ID_FLAG_NIL |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
CosmosBaseTendermintV1Beta1GetBlockByHeight
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/blocks/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/blocks/string', {
> The result from the above endpoint looks like this:
```json
{
"block_id": {
"hash": "0x1234567890abcdef...",
"part_set_header": {
"total": 0,
"hash": "0x1234567890abcdef..."
}
},
"block": {
"header": {
"version": {
"block": "1000000",
"app": "1000000"
},
"chain_id": "0x1234567890abcdef...",
"height": "height..."
},
"data": {
"txs": [
"item..."
]
},
"evidence": {
"evidence": [
{
"duplicate_vote_evidence": {
"vote_a": {
"type": "type...",
"height": "height...",
"round": 0
},
"vote_b": {
"type": "type...",
"height": "height...",
"round": 0
},
"total_voting_power": "total_voting_power..."
},
"light_client_attack_evidence": {
"conflicting_block": {
"signed_header": {
"header": {
"version": {
"block": "1000000",
"app": "1000000"
},
"chain_id": "0x1234567890abcdef...",
"height": "height..."
},
"commit": {
"height": "height...",
"round": 0,
"block_id": {
"hash": "0x1234567890abcdef...",
"part_set_header": {
"total": 0,
"hash": "0x1234567890abcdef..."
}
}
}
},
"validator_set": {
"validators": [
{
"address": "0x1234567890abcdef...",
"pub_key": {
"ed25519": "ed25519...",
"secp256k1": "secp256k1..."
},
"voting_power": "voting_power..."
}
],
"proposer": {
"address": "0x1234567890abcdef...",
"pub_key": {
"ed25519": "ed25519...",
"secp256k1": "secp256k1..."
},
"voting_power": "voting_power..."
},
"total_voting_power": "total_voting_power..."
}
},
"common_height": "common_height...",
"byzantine_validators": [
{
"address": "0x1234567890abcdef...",
"pub_key": {
"ed25519": "ed25519...",
"secp256k1": "secp256k1..."
},
"voting_power": "voting_power..."
}
]
}
}
]
}
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/base/tendermint/v1beta1/blocks/{height}
GetBlockByHeight queries block for given height.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| height | path | string(int64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
GetBlockByHeightResponse is the response type for the Query/GetBlockByHeight RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » block_id | object | false | none | none |
| »» hash | string(byte) | false | none | none |
| »» part_set_header | object | false | none | none |
| »»» total | integer(int64) | false | none | none |
| »»» hash | string(byte) | false | none | none |
| » block | object | false | none | none |
| »» header | object | false | none | Header defines the structure of a Tendermint block header. |
| »»» version | object | false | none | Consensus 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. |
| »»»» block | string(uint64) | false | none | none |
| »»»» app | string(uint64) | false | none | none |
| »»» chain_id | string | false | none | none |
| »»» height | string(int64) | false | none | none |
| »»» time | string(date-time) | false | none | none |
| »»» last_block_id | object | false | none | none |
| »»»» hash | string(byte) | false | none | none |
| »»»» part_set_header | object | false | none | none |
| »»»»» total | integer(int64) | false | none | none |
| »»»»» hash | string(byte) | false | none | none |
| »»» last_commit_hash | string(byte) | false | none | commit from validators from the last block |
| »»» data_hash | string(byte) | false | none | none |
| »»» validators_hash | string(byte) | false | none | validators for the current block |
| »»» next_validators_hash | string(byte) | false | none | none |
| »»» consensus_hash | string(byte) | false | none | none |
| »»» app_hash | string(byte) | false | none | none |
| »»» last_results_hash | string(byte) | false | none | none |
| »»» evidence_hash | string(byte) | false | none | evidence included in the block |
| »»» proposer_address | string(byte) | false | none | none |
| »» data | object | false | none | none |
| »»» txs | [string] | false | none | Txs 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. |
| »» evidence | object | false | none | none |
| »»» evidence | [object] | false | none | none |
| »»»» duplicate_vote_evidence | object | false | none | DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. |
| »»»»» vote_a | object | false | none | Vote represents a prevote, precommit, or commit vote from validators forconsensus. |
| »»»»»» type | string | false | none | SignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals |
| »»»»»» height | string(int64) | false | none | none |
| »»»»»» round | integer(int32) | false | none | none |
| »»»»»» block_id | object | false | none | zero if vote is nil. |
| »»»»»»» hash | string(byte) | false | none | none |
| »»»»»»» part_set_header | object | false | none | none |
| »»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»» hash | string(byte) | false | none | none |
| »»»»»» timestamp | string(date-time) | false | none | none |
| »»»»»» validator_address | string(byte) | false | none | none |
| »»»»»» validator_index | integer(int32) | false | none | none |
| »»»»»» signature | string(byte) | false | none | none |
| »»»»» vote_b | object | false | none | Vote represents a prevote, precommit, or commit vote from validators forconsensus. |
| »»»»»» type | string | false | none | SignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals |
| »»»»»» height | string(int64) | false | none | none |
| »»»»»» round | integer(int32) | false | none | none |
| »»»»»» block_id | object | false | none | zero if vote is nil. |
| »»»»»»» hash | string(byte) | false | none | none |
| »»»»»»» part_set_header | object | false | none | none |
| »»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»» hash | string(byte) | false | none | none |
| »»»»»» timestamp | string(date-time) | false | none | none |
| »»»»»» validator_address | string(byte) | false | none | none |
| »»»»»» validator_index | integer(int32) | false | none | none |
| »»»»»» signature | string(byte) | false | none | none |
| »»»»» total_voting_power | string(int64) | false | none | none |
| »»»»» validator_power | string(int64) | false | none | none |
| »»»»» timestamp | string(date-time) | false | none | none |
| »»»» light_client_attack_evidence | object | false | none | LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. |
| »»»»» conflicting_block | object | false | none | none |
| »»»»»» signed_header | object | false | none | none |
| »»»»»»» header | object | false | none | Header defines the structure of a Tendermint block header. |
| »»»»»»»» version | object | false | none | Consensus 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. |
| »»»»»»»»» block | string(uint64) | false | none | none |
| »»»»»»»»» app | string(uint64) | false | none | none |
| »»»»»»»» chain_id | string | false | none | none |
| »»»»»»»» height | string(int64) | false | none | none |
| »»»»»»»» time | string(date-time) | false | none | none |
| »»»»»»»» last_block_id | object | false | none | none |
| »»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»»» part_set_header | object | false | none | none |
| »»»»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»» last_commit_hash | string(byte) | false | none | commit from validators from the last block |
| »»»»»»»» data_hash | string(byte) | false | none | none |
| »»»»»»»» validators_hash | string(byte) | false | none | validators for the current block |
| »»»»»»»» next_validators_hash | string(byte) | false | none | none |
| »»»»»»»» consensus_hash | string(byte) | false | none | none |
| »»»»»»»» app_hash | string(byte) | false | none | none |
| »»»»»»»» last_results_hash | string(byte) | false | none | none |
| »»»»»»»» evidence_hash | string(byte) | false | none | evidence included in the block |
| »»»»»»»» proposer_address | string(byte) | false | none | none |
| »»»»»»» commit | object | false | none | Commit contains the evidence that a block was committed by a set of validators. |
| »»»»»»»» height | string(int64) | false | none | none |
| »»»»»»»» round | integer(int32) | false | none | none |
| »»»»»»»» block_id | object | false | none | none |
| »»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»»» part_set_header | object | false | none | none |
| »»»»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»» signatures | [object] | false | none | none |
| »»»»»»»»» block_id_flag | string | false | none | none |
| »»»»»»»»» validator_address | string(byte) | false | none | none |
| »»»»»»»»» timestamp | string(date-time) | false | none | none |
| »»»»»»»»» signature | string(byte) | false | none | none |
| »»»»»» validator_set | object | false | none | none |
| »»»»»»» validators | [object] | false | none | none |
| »»»»»»»» address | string(byte) | false | none | none |
| »»»»»»»» pub_key | object | false | none | none |
| »»»»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»»»» voting_power | string(int64) | false | none | none |
| »»»»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»»»» proposer | object | false | none | none |
| »»»»»»»» address | string(byte) | false | none | none |
| »»»»»»»» pub_key | object | false | none | none |
| »»»»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»»»» voting_power | string(int64) | false | none | none |
| »»»»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»»»» total_voting_power | string(int64) | false | none | none |
| »»»»» common_height | string(int64) | false | none | none |
| »»»»» byzantine_validators | [object] | false | none | none |
| »»»»»» address | string(byte) | false | none | none |
| »»»»»» pub_key | object | false | none | none |
| »»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»» voting_power | string(int64) | false | none | none |
| »»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»» total_voting_power | string(int64) | false | none | none |
| »»»»» timestamp | string(date-time) | false | none | none |
| »» last_commit | object | false | none | Commit contains the evidence that a block was committed by a set of validators. |
| »»» height | string(int64) | false | none | none |
| »»» round | integer(int32) | false | none | none |
| »»» block_id | object | false | none | none |
| »»»» hash | string(byte) | false | none | none |
| »»»» part_set_header | object | false | none | none |
| »»»»» total | integer(int64) | false | none | none |
| »»»»» hash | string(byte) | false | none | none |
| »»» signatures | [object] | false | none | none |
| »»»» block_id_flag | string | false | none | none |
| »»»» validator_address | string(byte) | false | none | none |
| »»»» timestamp | string(date-time) | false | none | none |
| »»»» signature | string(byte) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| type | SIGNED_MSG_TYPE_UNKNOWN |
| type | SIGNED_MSG_TYPE_PREVOTE |
| type | SIGNED_MSG_TYPE_PRECOMMIT |
| type | SIGNED_MSG_TYPE_PROPOSAL |
| type | SIGNED_MSG_TYPE_UNKNOWN |
| type | SIGNED_MSG_TYPE_PREVOTE |
| type | SIGNED_MSG_TYPE_PRECOMMIT |
| type | SIGNED_MSG_TYPE_PROPOSAL |
| block_id_flag | BLOCK_ID_FLAG_UNKNOWN |
| block_id_flag | BLOCK_ID_FLAG_ABSENT |
| block_id_flag | BLOCK_ID_FLAG_COMMIT |
| block_id_flag | BLOCK_ID_FLAG_NIL |
| block_id_flag | BLOCK_ID_FLAG_UNKNOWN |
| block_id_flag | BLOCK_ID_FLAG_ABSENT |
| block_id_flag | BLOCK_ID_FLAG_COMMIT |
| block_id_flag | BLOCK_ID_FLAG_NIL |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
CosmosBaseTendermintV1Beta1GetNodeInfo
Code samples
> The result from the above endpoint looks like this:
```json
{
"default_node_info": {
"protocol_version": {
"p2p": "1000000",
"block": "1000000",
"app": "1000000"
},
"default_node_id": "0x1234567890abcdef...",
"listen_addr": "listen_addr..."
},
"application_version": {
"name": "name...",
"app_name": "app_name...",
"version": "version..."
}
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/node_info \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/node_info', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/base/tendermint/v1beta1/node_info
GetNodeInfo queries the current node info.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
GetNodeInfoResponse is the request type for the Query/GetNodeInfo RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » default_node_info | object | false | none | none |
| »» protocol_version | object | false | none | none |
| »»» p2p | string(uint64) | false | none | none |
| »»» block | string(uint64) | false | none | none |
| »»» app | string(uint64) | false | none | none |
| »» default_node_id | string | false | none | none |
| »» listen_addr | string | false | none | none |
| »» network | string | false | none | none |
| »» version | string | false | none | none |
| »» channels | string(byte) | false | none | none |
| »» moniker | string | false | none | none |
| »» other | object | false | none | none |
| »»» tx_index | string | false | none | none |
| »»» rpc_address | string | false | none | none |
| » application_version | object | false | none | VersionInfo is the type for the GetNodeInfoResponse message. |
| »» name | string | false | none | none |
| »» app_name | string | false | none | none |
| »» version | string | false | none | none |
| »» git_commit | string | false | none | none |
| »» build_tags | string | false | none | none |
| »» go_version | string | false | none | none |
| »» build_deps | [object] | false | none | none |
| »»» Module is the type for VersionInfo | object | false | none | none |
| »»»» path | string | false | none | none |
| »»»» version | string | false | none | none |
| »»»» sum | string | false | none | none |
| »» cosmos_sdk_version | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"syncing": true
}
This operation does not require authentication
CosmosBaseTendermintV1Beta1GetSyncing
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/syncing \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/syncing', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/base/tendermint/v1beta1/syncing
GetSyncing queries node syncing.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
GetSyncingResponse is the response type for the Query/GetSyncing RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » syncing | boolean | false | none | none |
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"block_height": "block_height...",
"validators": [
{
"address": "0x1234567890abcdef...",
"pub_key": {
"@type": "@type..."
},
"voting_power": "voting_power..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» additionalProperties|any|false|none|none|
|»» @type|string|false|none|A 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.|
This operation does not require authentication
CosmosBaseTendermintV1Beta1GetLatestValidatorSet
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/validatorsets/latest \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/validatorsets/latest', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/base/tendermint/v1beta1/validatorsets/latest
GetLatestValidatorSet queries latest validator-set.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
GetLatestValidatorSetResponse is the response type for the Query/GetValidatorSetByHeight RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » block_height | string(int64) | false | none | none |
| » validators | [object] | false | none | none |
| »» address | string | false | none | none |
| »» pub_key | object | false | none | Any 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".JSON====The 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" } |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» voting_power | string(int64) | false | none | none |
| »» proposer_priority | string(int64) | false | none | none |
The result from the above endpoint looks like this:
{
"block_height": "block_height...",
"validators": [
{
"address": "0x1234567890abcdef...",
"pub_key": {
"@type": "@type..."
},
"voting_power": "voting_power..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
|» pagination|object|false|none|pagination defines an pagination for the response.| |»» next_key|string(byte)|false|none|none| |»» total|string(uint64)|false|none|none|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
CosmosBaseTendermintV1Beta1GetValidatorSetByHeight
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/validatorsets/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/base/tendermint/v1beta1/validatorsets/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/base/tendermint/v1beta1/validatorsets/{height}
GetValidatorSetByHeight queries validator-set at a given height.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| height | path | string(int64) | true | none |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
GetValidatorSetByHeightResponse is the response type for the Query/GetValidatorSetByHeight RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » block_height | string(int64) | false | none | none |
| » validators | [object] | false | none | none |
| »» address | string | false | none | none |
| »» pub_key | object | false | none | Any 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".JSON====The 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" } |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» voting_power | string(int64) | false | none | none |
| »» proposer_priority | string(int64) | false | none | none |
| » pagination | object | false | none | pagination defines an pagination for the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Nyks Tx - Service Module
Simulate
Code samples
curl --request POST \
--url https://lcd.twilight.org/cosmos/tx/v1beta1/simulate \
--header 'Accept: */*' \
--header 'Content-Type: application/json' \
--data '{"tx":{"body":{"messages":[{"@type":"string","property1":null,"property2":null}],"memo":"string","timeout_height":"string","extension_options":[{"@type":"string","property1":null,"property2":null}],"non_critical_extension_options":[{"@type":"string","property1":null,"property2":null}]},"auth_info":{"signer_infos":[{"public_key":{"@type":"string","property1":null,"property2":null},"mode_info":{"single":{"mode":"SIGN_MODE_UNSPECIFIED"},"multi":{"bitarray":{"extra_bits_stored":0,"elems":"string"},"mode_infos":[{}]}},"sequence":"string"}],"fee":{"amount":[{"denom":"string","amount":"string"}],"gas_limit":"string","payer":"string","granter":"string"}},"signatures":["string"]},"tx_bytes":"string"}'
The result from the above endpoint looks like this:
{
"gas_info": {
"gas_wanted": "1000000",
"gas_used": "1000000"
},
"result": {
"data": "data...",
"log": "log...",
"events": [
{
"type": "type...",
"attributes": [
{
"key": "key...",
"value": "1000",
"index": true
}
]
}
]
}
}
const response = await fetch('https://lcd.twilight.org/cosmos/tx/v1beta1/simulate', {
method: 'POST',
headers: {
'Accept': '*/*',
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);
POST /cosmos/tx/v1beta1/simulate
Simulate simulates executing a transaction for estimating gas usage.
Body parameter
{
"tx": {
"body": {
"messages": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"memo": "string",
"timeout_height": "string",
"extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"non_critical_extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
]
},
"auth_info": {
"signer_infos": [
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
],
"fee": {
"amount": [
{
"denom": "string",
"amount": "string"
}
],
"gas_limit": "string",
"payer": "string",
"granter": "string"
}
},
"signatures": [
"string"
]
},
"tx_bytes": "string"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | cosmos.tx.v1beta1.SimulateRequest | true | SimulateRequest is the request type for the Service.Simulate |
Detailed descriptions
body: SimulateRequest is the request type for the Service.Simulate RPC method.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
SimulateResponse is the response type for the Service.SimulateRPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » gas_info | object | false | none | gas_info is the information about gas used in the simulation. |
| »» gas_wanted | string(uint64) | false | none | GasWanted is the maximum units of work we allow this tx to perform. |
| »» gas_used | string(uint64) | false | none | GasUsed is the amount of gas actually consumed. |
| » result | object | false | none | result is the result of the simulation. |
| »» data | string(byte) | false | none | Data is any data returned from message or handler execution. It MUST belength prefixed in order to separate data from multiple message executions. |
| »» log | string | false | none | Log contains the log information from message or handler execution. |
| »» events | [object] | false | none | Events contains a slice of Event objects that were emitted during messageor handler execution. |
| »»» type | string | false | none | none |
| »»» attributes | [object] | false | none | none |
| »»»» key | string(byte) | false | none | none |
| »»»» value | string(byte) | false | none | none |
| »»»» index | boolean | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
GetTxsEvent
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/tx/v1beta1/txs \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/tx/v1beta1/txs', {
> The result from the above endpoint looks like this:
```json
{
"status": "success",
"data": {}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/tx/v1beta1/txs
GetTxsEvent fetches txs by event.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| events | query | array[string] | false | events is the list of transaction event type. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse is set to true if results are to be returned in the descending order. |
| order_by | query | string | false | - ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults to ASC in this case. |
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
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
Enumerated Values
| Parameter | Value |
|---|---|
| order_by | ORDER_BY_UNSPECIFIED |
| order_by | ORDER_BY_ASC |
| order_by | ORDER_BY_DESC |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | cosmos.tx.v1beta1.GetTxsEventResponse |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"tx_response": {
"height": "height...",
"txhash": "0x1234567890abcdef...",
"codespace": "0xabcdef1234567890...",
"code": 0,
"data": "data...",
"raw_log": "raw_log...",
"logs": [
{
"msg_index": 0,
"log": "log...",
"events": [
{
"type": "type...",
"attributes": [
{
"key": "key...",
"value": "1000"
}
]
}
]
}
],
"info": "info...",
"gas_wanted": "gas_wanted...",
"gas_used": "gas_used...",
"tx": {
"@type": "@type..."
},
"timestamp": "timestamp...",
"events": [
{
"type": "type...",
"attributes": [
{
"key": "key...",
"value": "1000",
"index": true
}
]
}
]
}
}
This operation does not require authentication
BroadcastTx
Code samples
curl --request POST \
--url https://lcd.twilight.org/cosmos/tx/v1beta1/txs \
--header 'Accept: */*' \
--header 'Content-Type: application/json' \
--data '{"tx_bytes":"string","mode":"BROADCAST_MODE_UNSPECIFIED"}'
const response = await fetch('https://lcd.twilight.org/cosmos/tx/v1beta1/txs', {
method: 'POST',
headers: {
'Accept': '*/*',
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);
POST /cosmos/tx/v1beta1/txs
BroadcastTx broadcast transaction.
Body parameter
{
"tx_bytes": "string",
"mode": "BROADCAST_MODE_UNSPECIFIED"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | true | BroadcastTxRequest is the request type for the Service.BroadcastTxRequest |
| » tx_bytes | body | string(byte) | false | tx_bytes is the raw transaction. |
| » mode | body | string | false | BroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC method. |
Detailed descriptions
body: BroadcastTxRequest is the request type for the Service.BroadcastTxRequest RPC method.
» mode: BroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC method.
- BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering
- BROADCAST_MODE_BLOCK: BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for the tx to be committed in a block.
- 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
| Parameter | Value |
|---|---|
| » mode | BROADCAST_MODE_UNSPECIFIED |
| » mode | BROADCAST_MODE_BLOCK |
| » mode | BROADCAST_MODE_SYNC |
| » mode | BROADCAST_MODE_ASYNC |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
BroadcastTxResponse is the response type for the Service.BroadcastTx method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » tx_response | object | false | none | tx_response is the queried TxResponses. |
| »» height | string(int64) | false | none | none |
| »» txhash | string | false | none | The transaction hash. |
| »» codespace | string | false | none | none |
| »» code | integer(int64) | false | none | Response code. |
| »» data | string | false | none | Result bytes, if any. |
| »» raw_log | string | false | none | The output of the application's logger (raw string). May benon-deterministic. |
| »» logs | [object] | false | none | The output of the application's logger (typed). May be non-deterministic. |
| »»» msg_index | integer(int64) | false | none | none |
| »»» log | string | false | none | none |
| »»» events | [object] | false | none | Events contains a slice of Event objects that were emitted during someexecution. |
| »»»» type | string | false | none | none |
| »»»» attributes | [object] | false | none | none |
| »»»»» key | string | false | none | none |
| »»»»» value | string | false | none | none |
| »» info | string | false | none | Additional information. May be non-deterministic. |
| »» gas_wanted | string(int64) | false | none | Amount of gas requested for transaction. |
| »» gas_used | string(int64) | false | none | Amount of gas consumed by transaction. |
| »» tx | object | false | none | The request transaction bytes. |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| »» timestamp | string | false | none | Time 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] | false | none | Events 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 handler. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45 |
| »»» type | string | false | none | none |
| »»» attributes | [object] | false | none | none |
| »»»» key | string(byte) | false | none | none |
| »»»» value | string(byte) | false | none | none |
| »»»» index | boolean | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"status": "success",
"data": {}
}
This operation does not require authentication
GetBlockWithTxs
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/tx/v1beta1/txs/block/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/tx/v1beta1/txs/block/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/tx/v1beta1/txs/block/{height}
GetBlockWithTxs fetches a block with decoded txs.
Since: cosmos-sdk 0.45.2
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| height | path | string(int64) | true | height is the height of the block to query. |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | cosmos.tx.v1beta1.GetBlockWithTxsResponse |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"status": "success",
"data": {}
}
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» additionalProperties|any|false|none|none|
|»» @type|string|false|none|A 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.|
This operation does not require authentication
GetTx
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/tx/v1beta1/txs/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/tx/v1beta1/txs/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/tx/v1beta1/txs/{hash}
GetTx fetches a tx by hash.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| hash | path | string | true | hash is the tx hash to query, encoded as a hex string. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | cosmos.tx.v1beta1.GetTxResponse |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Schemas
cosmos.tx.v1beta1.AuthInfo
{
"signer_infos": [
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
],
"fee": {
"amount": [
{
"denom": "string",
"amount": "string"
}
],
"gas_limit": "string",
"payer": "string",
"granter": "string"
}
}
AuthInfo describes the fee and signer modes that are used to sign a transaction.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| signer_infos | [cosmos.tx.v1beta1.SignerInfo] | false | none | signer_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. |
| fee | object | false | none | Fee 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] | false | none | none |
| »» denom | string | false | none | none |
| »» amount | string | false | none | none |
| » gas_limit | string(uint64) | false | none | none |
| » payer | string | false | none | if 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. |
| » granter | string | false | none | none |
cosmos.tx.v1beta1.GetBlockWithTxsResponse
{
"txs": [
{
"body": {
"messages": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"memo": "string",
"timeout_height": "string",
"extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"non_critical_extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
]
},
"auth_info": {
"signer_infos": [
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
],
"fee": {
"amount": [
{
"denom": "string",
"amount": "string"
}
],
"gas_limit": "string",
"payer": "string",
"granter": "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": 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": {
"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"
},
"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"
},
"total_voting_power": "string",
"validator_power": "string",
"timestamp": "2019-08-24T14:15:22Z"
},
"light_client_attack_evidence": {
"conflicting_block": {
"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": {}
},
"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": {}
},
"signatures": [
{}
]
}
},
"validator_set": {
"validators": [
{
"address": "string",
"pub_key": {},
"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"
}
},
"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"
}
}
]
},
"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"
}
]
}
},
"pagination": {
"next_key": "string",
"total": "string"
}
}
GetBlockWithTxsResponse is the response type for the Service.GetBlockWithTxs method.
Since: cosmos-sdk 0.45.2
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| txs | [cosmos.tx.v1beta1.Tx] | false | none | txs are the transactions in the block. |
| block_id | object | false | none | none |
| » hash | string(byte) | false | none | none |
| » part_set_header | object | false | none | none |
| »» total | integer(int64) | false | none | none |
| »» hash | string(byte) | false | none | none |
| block | object | false | none | none |
| » header | object | false | none | Header defines the structure of a Tendermint block header. |
| »» version | object | false | none | Consensus 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. |
| »»» block | string(uint64) | false | none | none |
| »»» app | string(uint64) | false | none | none |
| »» chain_id | string | false | none | none |
| »» height | string(int64) | false | none | none |
| »» time | string(date-time) | false | none | none |
| »» last_block_id | object | false | none | none |
| »»» hash | string(byte) | false | none | none |
| »»» part_set_header | object | false | none | none |
| »»»» total | integer(int64) | false | none | none |
| »»»» hash | string(byte) | false | none | none |
| »» last_commit_hash | string(byte) | false | none | commit from validators from the last block |
| »» data_hash | string(byte) | false | none | none |
| »» validators_hash | string(byte) | false | none | validators for the current block |
| »» next_validators_hash | string(byte) | false | none | none |
| »» consensus_hash | string(byte) | false | none | none |
| »» app_hash | string(byte) | false | none | none |
| »» last_results_hash | string(byte) | false | none | none |
| »» evidence_hash | string(byte) | false | none | evidence included in the block |
| »» proposer_address | string(byte) | false | none | none |
| » data | object | false | none | none |
| »» txs | [string] | false | none | Txs 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. |
| » evidence | object | false | none | none |
| »» evidence | [object] | false | none | none |
| »»» duplicate_vote_evidence | object | false | none | DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. |
| »»»» vote_a | object | false | none | Vote represents a prevote, precommit, or commit vote from validators forconsensus. |
| »»»»» type | string | false | none | SignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals |
| »»»»» height | string(int64) | false | none | none |
| »»»»» round | integer(int32) | false | none | none |
| »»»»» block_id | object | false | none | zero if vote is nil. |
| »»»»»» hash | string(byte) | false | none | none |
| »»»»»» part_set_header | object | false | none | none |
| »»»»»»» total | integer(int64) | false | none | none |
| »»»»»»» hash | string(byte) | false | none | none |
| »»»»» timestamp | string(date-time) | false | none | none |
| »»»»» validator_address | string(byte) | false | none | none |
| »»»»» validator_index | integer(int32) | false | none | none |
| »»»»» signature | string(byte) | false | none | none |
| »»»» vote_b | object | false | none | Vote represents a prevote, precommit, or commit vote from validators forconsensus. |
| »»»»» type | string | false | none | SignedMsgType is a type of signed message in the consensus. - SIGNED_MSG_TYPE_PREVOTE: Votes - SIGNED_MSG_TYPE_PROPOSAL: Proposals |
| »»»»» height | string(int64) | false | none | none |
| »»»»» round | integer(int32) | false | none | none |
| »»»»» block_id | object | false | none | zero if vote is nil. |
| »»»»»» hash | string(byte) | false | none | none |
| »»»»»» part_set_header | object | false | none | none |
| »»»»»»» total | integer(int64) | false | none | none |
| »»»»»»» hash | string(byte) | false | none | none |
| »»»»» timestamp | string(date-time) | false | none | none |
| »»»»» validator_address | string(byte) | false | none | none |
| »»»»» validator_index | integer(int32) | false | none | none |
| »»»»» signature | string(byte) | false | none | none |
| »»»» total_voting_power | string(int64) | false | none | none |
| »»»» validator_power | string(int64) | false | none | none |
| »»»» timestamp | string(date-time) | false | none | none |
| »»» light_client_attack_evidence | object | false | none | LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. |
| »»»» conflicting_block | object | false | none | none |
| »»»»» signed_header | object | false | none | none |
| »»»»»» header | object | false | none | Header defines the structure of a Tendermint block header. |
| »»»»»»» version | object | false | none | Consensus 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. |
| »»»»»»»» block | string(uint64) | false | none | none |
| »»»»»»»» app | string(uint64) | false | none | none |
| »»»»»»» chain_id | string | false | none | none |
| »»»»»»» height | string(int64) | false | none | none |
| »»»»»»» time | string(date-time) | false | none | none |
| »»»»»»» last_block_id | object | false | none | none |
| »»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»» part_set_header | object | false | none | none |
| »»»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»» last_commit_hash | string(byte) | false | none | commit from validators from the last block |
| »»»»»»» data_hash | string(byte) | false | none | none |
| »»»»»»» validators_hash | string(byte) | false | none | validators for the current block |
| »»»»»»» next_validators_hash | string(byte) | false | none | none |
| »»»»»»» consensus_hash | string(byte) | false | none | none |
| »»»»»»» app_hash | string(byte) | false | none | none |
| »»»»»»» last_results_hash | string(byte) | false | none | none |
| »»»»»»» evidence_hash | string(byte) | false | none | evidence included in the block |
| »»»»»»» proposer_address | string(byte) | false | none | none |
| »»»»»» commit | object | false | none | Commit contains the evidence that a block was committed by a set of validators. |
| »»»»»»» height | string(int64) | false | none | none |
| »»»»»»» round | integer(int32) | false | none | none |
| »»»»»»» block_id | object | false | none | none |
| »»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»»» part_set_header | object | false | none | none |
| »»»»»»»»» total | integer(int64) | false | none | none |
| »»»»»»»»» hash | string(byte) | false | none | none |
| »»»»»»» signatures | [object] | false | none | none |
| »»»»»»»» block_id_flag | string | false | none | none |
| »»»»»»»» validator_address | string(byte) | false | none | none |
| »»»»»»»» timestamp | string(date-time) | false | none | none |
| »»»»»»»» signature | string(byte) | false | none | none |
| »»»»» validator_set | object | false | none | none |
| »»»»»» validators | [object] | false | none | none |
| »»»»»»» address | string(byte) | false | none | none |
| »»»»»»» pub_key | object | false | none | none |
| »»»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»»» voting_power | string(int64) | false | none | none |
| »»»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»»» proposer | object | false | none | none |
| »»»»»»» address | string(byte) | false | none | none |
| »»»»»»» pub_key | object | false | none | none |
| »»»»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»»»» voting_power | string(int64) | false | none | none |
| »»»»»»» proposer_priority | string(int64) | false | none | none |
| »»»»»» total_voting_power | string(int64) | false | none | none |
| »»»» common_height | string(int64) | false | none | none |
| »»»» byzantine_validators | [object] | false | none | none |
| »»»»» address | string(byte) | false | none | none |
| »»»»» pub_key | object | false | none | none |
| »»»»»» ed25519 | string(byte) | false | none | none |
| »»»»»» secp256k1 | string(byte) | false | none | none |
| »»»»» voting_power | string(int64) | false | none | none |
| »»»»» proposer_priority | string(int64) | false | none | none |
| »»»» total_voting_power | string(int64) | false | none | none |
| »»»» timestamp | string(date-time) | false | none | none |
| » last_commit | object | false | none | Commit contains the evidence that a block was committed by a set of validators. |
| »» height | string(int64) | false | none | none |
| »» round | integer(int32) | false | none | none |
| »» block_id | object | false | none | none |
| »»» hash | string(byte) | false | none | none |
| »»» part_set_header | object | false | none | none |
| »»»» total | integer(int64) | false | none | none |
| »»»» hash | string(byte) | false | none | none |
| »» signatures | [object] | false | none | none |
| »»» block_id_flag | string | false | none | none |
| »»» validator_address | string(byte) | false | none | none |
| »»» timestamp | string(date-time) | false | none | none |
| »»» signature | string(byte) | false | none | none |
| pagination | object | false | none | pagination defines a pagination for the response. |
| » next_key | string(byte) | false | none | none |
| » total | string(uint64) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| type | SIGNED_MSG_TYPE_UNKNOWN |
| type | SIGNED_MSG_TYPE_PREVOTE |
| type | SIGNED_MSG_TYPE_PRECOMMIT |
| type | SIGNED_MSG_TYPE_PROPOSAL |
| type | SIGNED_MSG_TYPE_UNKNOWN |
| type | SIGNED_MSG_TYPE_PREVOTE |
| type | SIGNED_MSG_TYPE_PRECOMMIT |
| type | SIGNED_MSG_TYPE_PROPOSAL |
| block_id_flag | BLOCK_ID_FLAG_UNKNOWN |
| block_id_flag | BLOCK_ID_FLAG_ABSENT |
| block_id_flag | BLOCK_ID_FLAG_COMMIT |
| block_id_flag | BLOCK_ID_FLAG_NIL |
| block_id_flag | BLOCK_ID_FLAG_UNKNOWN |
| block_id_flag | BLOCK_ID_FLAG_ABSENT |
| block_id_flag | BLOCK_ID_FLAG_COMMIT |
| block_id_flag | BLOCK_ID_FLAG_NIL |
cosmos.tx.v1beta1.GetTxResponse
{
"tx": {
"body": {
"messages": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"memo": "string",
"timeout_height": "string",
"extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"non_critical_extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
]
},
"auth_info": {
"signer_infos": [
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
],
"fee": {
"amount": [
{
"denom": "string",
"amount": "string"
}
],
"gas_limit": "string",
"payer": "string",
"granter": "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": "string",
"attributes": [
{
"key": "string",
"value": "string"
}
]
}
]
}
],
"info": "string",
"gas_wanted": "string",
"gas_used": "string",
"tx": {
"@type": "string",
"property1": null,
"property2": null
},
"timestamp": "string",
"events": [
{
"type": "string",
"attributes": [
{
"key": "string",
"value": "string",
"index": true
}
]
}
]
}
}
GetTxResponse is the response type for the Service.GetTx method.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| tx | cosmos.tx.v1beta1.Tx | false | none | Tx is the standard type used for broadcasting transactions. |
| tx_response | object | false | none | tx_response is the queried TxResponses. |
| » height | string(int64) | false | none | none |
| » txhash | string | false | none | The transaction hash. |
| » codespace | string | false | none | none |
| » code | integer(int64) | false | none | Response code. |
| » data | string | false | none | Result bytes, if any. |
| » raw_log | string | false | none | The output of the application's logger (raw string). May benon-deterministic. |
| » logs | [object] | false | none | The output of the application's logger (typed). May be non-deterministic. |
| »» msg_index | integer(int64) | false | none | none |
| »» log | string | false | none | none |
| »» events | [object] | false | none | Events contains a slice of Event objects that were emitted during someexecution. |
| »»» type | string | false | none | none |
| »»» attributes | [object] | false | none | none |
| »»»» key | string | false | none | none |
| »»»» value | string | false | none | none |
| » info | string | false | none | Additional information. May be non-deterministic. |
| » gas_wanted | string(int64) | false | none | Amount of gas requested for transaction. |
| » gas_used | string(int64) | false | none | Amount of gas consumed by transaction. |
| » tx | object | false | none | The request transaction bytes. |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » timestamp | string | false | none | Time 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] | false | none | Events 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 handler. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45 |
| »» type | string | false | none | none |
| »» attributes | [object] | false | none | none |
| »»» key | string(byte) | false | none | none |
| »»» value | string(byte) | false | none | none |
| »»» index | boolean | false | none | none |
cosmos.tx.v1beta1.GetTxsEventResponse
{
"txs": [
{
"body": {
"messages": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"memo": "string",
"timeout_height": "string",
"extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"non_critical_extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
]
},
"auth_info": {
"signer_infos": [
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
],
"fee": {
"amount": [
{
"denom": "string",
"amount": "string"
}
],
"gas_limit": "string",
"payer": "string",
"granter": "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": [
{
"type": "string",
"attributes": [
{
"key": "string",
"value": "string"
}
]
}
]
}
],
"info": "string",
"gas_wanted": "string",
"gas_used": "string",
"tx": {
"@type": "string",
"property1": null,
"property2": null
},
"timestamp": "string",
"events": [
{
"type": "string",
"attributes": [
{
"key": "string",
"value": "string",
"index": true
}
]
}
]
}
],
"pagination": {
"next_key": "string",
"total": "string"
}
}
GetTxsEventResponse is the response type for the Service.TxsByEvents RPC method.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| txs | [cosmos.tx.v1beta1.Tx] | false | none | txs is the list of queried transactions. |
| tx_responses | [object] | false | none | tx_responses is the list of queried TxResponses. |
| » height | string(int64) | false | none | none |
| » txhash | string | false | none | The transaction hash. |
| » codespace | string | false | none | none |
| » code | integer(int64) | false | none | Response code. |
| » data | string | false | none | Result bytes, if any. |
| » raw_log | string | false | none | The output of the application's logger (raw string). May benon-deterministic. |
| » logs | [object] | false | none | The output of the application's logger (typed). May be non-deterministic. |
| »» msg_index | integer(int64) | false | none | none |
| »» log | string | false | none | none |
| »» events | [object] | false | none | Events contains a slice of Event objects that were emitted during someexecution. |
| »»» type | string | false | none | none |
| »»» attributes | [object] | false | none | none |
| »»»» key | string | false | none | none |
| »»»» value | string | false | none | none |
| » info | string | false | none | Additional information. May be non-deterministic. |
| » gas_wanted | string(int64) | false | none | Amount of gas requested for transaction. |
| » gas_used | string(int64) | false | none | Amount of gas consumed by transaction. |
| » tx | object | false | none | The request transaction bytes. |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » timestamp | string | false | none | Time 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] | false | none | Events 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 handler. Whereas Logs contains the events, withadditional metadata, emitted only by processing the messages.Since: cosmos-sdk 0.42.11, 0.44.5, 0.45 |
| »» type | string | false | none | none |
| »» attributes | [object] | false | none | none |
| »»» key | string(byte) | false | none | none |
| »»» value | string(byte) | false | none | none |
| »»» index | boolean | false | none | none |
| pagination | object | false | none | pagination defines a pagination for the response. |
| » next_key | string(byte) | false | none | none |
| » total | string(uint64) | false | none | none |
cosmos.tx.v1beta1.ModeInfo
{
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {}
}
]
}
}
ModeInfo describes the signing mode of a single or nested multisig signer.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| single | object | false | none | none |
| » mode | string | false | none | SignMode represents a signing mode with its own security guarantees. - 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 - 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-191Currently, 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 |
| multi | cosmos.tx.v1beta1.ModeInfo.Multi | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| mode | SIGN_MODE_UNSPECIFIED |
| mode | SIGN_MODE_DIRECT |
| mode | SIGN_MODE_TEXTUAL |
| mode | SIGN_MODE_LEGACY_AMINO_JSON |
| mode | SIGN_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": []
}
}
]
}
Multi is the mode info for a multisig public key
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| bitarray | object | false | none | CompactBitArray 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_stored | integer(int64) | false | none | none |
| » elems | string(byte) | false | none | none |
| mode_infos | [cosmos.tx.v1beta1.ModeInfo] | false | none | [ModeInfo describes the signing mode of a single or nested multisig signer.] |
cosmos.tx.v1beta1.SignerInfo
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
SignerInfo describes the public key and signing mode of a single top-level signer.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| public_key | object | false | none | public_key is the public key of the signer. It is optional for accountsthat already exist in state. If unset, the verifier can use the required \signer address for this position and lookup the public key. |
| » additionalProperties | any | false | none | none |
| » @type | string | false | none | A 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. |
| mode_info | cosmos.tx.v1beta1.ModeInfo | false | none | ModeInfo describes the signing mode of a single or nested multisig signer. |
| sequence | string(uint64) | false | none | sequence 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": "string",
"property1": null,
"property2": null
}
],
"memo": "string",
"timeout_height": "string",
"extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"non_critical_extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
]
},
"auth_info": {
"signer_infos": [
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
],
"fee": {
"amount": [
{
"denom": "string",
"amount": "string"
}
],
"gas_limit": "string",
"payer": "string",
"granter": "string"
}
},
"signatures": [
"string"
]
},
"tx_bytes": "string"
}
SimulateRequest is the request type for the Service.Simulate RPC method.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| tx | cosmos.tx.v1beta1.Tx | false | none | Tx is the standard type used for broadcasting transactions. |
| tx_bytes | string(byte) | false | none | tx_bytes is the raw transaction.Since: cosmos-sdk 0.43 |
cosmos.tx.v1beta1.Tx
{
"body": {
"messages": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"memo": "string",
"timeout_height": "string",
"extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
],
"non_critical_extension_options": [
{
"@type": "string",
"property1": null,
"property2": null
}
]
},
"auth_info": {
"signer_infos": [
{
"public_key": {
"@type": "string",
"property1": null,
"property2": null
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_UNSPECIFIED"
},
"multi": {
"bitarray": {
"extra_bits_stored": 0,
"elems": "string"
},
"mode_infos": [
{}
]
}
},
"sequence": "string"
}
],
"fee": {
"amount": [
{
"denom": "string",
"amount": "string"
}
],
"gas_limit": "string",
"payer": "string",
"granter": "string"
}
},
"signatures": [
"string"
]
}
Tx is the standard type used for broadcasting transactions.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| body | object | false | none | TxBody is the body of a transaction that all signers sign over. |
| » messages | [object] | false | none | messages 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. |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » memo | string | false | none | memo 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). |
| » timeout_height | string(uint64) | false | none | none |
| » extension_options | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » non_critical_extension_options | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| auth_info | cosmos.tx.v1beta1.AuthInfo | false | none | AuthInfo describes the fee and signer modes that are used to sign atransaction. |
| signatures | [string] | false | none | signatures 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. |
Nyks IBC Module
IbcApplicationsTransferV1DenomTraces
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/apps/transfer/v1/denom_traces \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/apps/transfer/v1/denom_traces', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"denom_traces": [
{
"path": "path...",
"base_denom": "base_denom..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
GET /ibc/apps/transfer/v1/denom_traces
DenomTraces queries all denomination traces.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
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.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryConnectionsResponse is the response type for the Query/DenomTraces RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » denom_traces | [object] | false | none | denom_traces returns all denominations trace information. |
| »» path | string | false | none | path defines the chain of port/channel identifiers used for tracing thesource of the fungible token. |
| »» base_denom | string | false | none | base denomination of the relayed fungible token. |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcApplicationsTransferV1DenomTrace
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/apps/transfer/v1/denom_traces/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/apps/transfer/v1/denom_traces/string', {
> The result from the above endpoint looks like this:
```json
{
"denom_trace": {
"path": "path...",
"base_denom": "base_denom..."
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /ibc/apps/transfer/v1/denom_traces/{hash}
DenomTrace queries a denomination trace information.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| hash | path | string | true | hash (in hex format) of the denomination trace information. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryDenomTraceResponse is the response type for the Query/DenomTrace RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » denom_trace | object | false | none | denom_trace returns the requested denomination trace information. |
| »» path | string | false | none | path defines the chain of port/channel identifiers used for tracing thesource of the fungible token. |
| »» base_denom | string | false | none | base denomination of the relayed fungible token. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcApplicationsTransferV1Params
Code samples
> The result from the above endpoint looks like this:
```json
{
"params": {
"send_enabled": true,
"receive_enabled": true
}
}
curl --request GET \ --url https://lcd.twilight.org/ibc/apps/transfer/v1/params \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/ibc/apps/transfer/v1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/apps/transfer/v1/params
Params queries all parameters of the ibc-transfer module.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is the response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params defines the parameters of the module. |
| »» send_enabled | boolean | false | none | send_enabled enables or disables all cross-chain token transfers from thischain. |
| »» receive_enabled | boolean | false | none | receive_enabled enables or disables all cross-chain token transfers to thischain. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"channels": [
{
"state": "state...",
"ordering": "ordering...",
"counterparty": {
"port_id": "0x1234567890abcdef...",
"channel_id": "0x1234567890abcdef..."
}
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
},
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
This operation does not require authentication
IbcCoreChannelV1Channels
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/channel/v1/channels
Channels queries all the IBC channels of a chain.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
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.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryChannelsResponse is the response type for the Query/Channels RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » channels | [object] | false | none | list of stored channels of the chain. |
| »» state | string | false | none | State defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN 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. |
| »» ordering | string | false | none | - 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 |
| »» counterparty | object | false | none | none |
| »»» port_id | string | false | none | port on the counterparty chain which owns the other end of the channel. |
| »»» channel_id | string | false | none | none |
| »» connection_hops | [string] | false | none | none |
| »» version | string | false | none | none |
| »» port_id | string | false | none | none |
| »» channel_id | string | false | none | none |
| » pagination | object | false | none | PageResponse 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_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
| » height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| state | STATE_UNINITIALIZED_UNSPECIFIED |
| state | STATE_INIT |
| state | STATE_TRYOPEN |
| state | STATE_OPEN |
| state | STATE_CLOSED |
| ordering | ORDER_NONE_UNSPECIFIED |
| ordering | ORDER_UNORDERED |
| ordering | ORDER_ORDERED |
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"channel": {
"state": "state...",
"ordering": "ordering...",
"counterparty": {
"port_id": "0x1234567890abcdef...",
"channel_id": "0x1234567890abcdef..."
}
},
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» additionalProperties|any|false|none|none|
|»» @type|string|false|none|A 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.|
This operation does not require authentication
IbcCoreChannelV1Channel
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}
Channel queries an IBC Channel.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » channel | object | false | none | Channel 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. |
| »» state | string | false | none | State defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN 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. |
| »» ordering | string | false | none | - 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 |
| »» counterparty | object | false | none | none |
| »»» port_id | string | false | none | port on the counterparty chain which owns the other end of the channel. |
| »»» channel_id | string | false | none | none |
| »» connection_hops | [string] | false | none | none |
| »» version | string | false | none | none |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| state | STATE_UNINITIALIZED_UNSPECIFIED |
| state | STATE_INIT |
| state | STATE_TRYOPEN |
| state | STATE_OPEN |
| state | STATE_CLOSED |
The result from the above endpoint looks like this:
{
"identified_client_state": {
"client_id": "0x1234567890abcdef...",
"client_state": {
"@type": "@type..."
}
},
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|ordering|ORDER_NONE_UNSPECIFIED| |ordering|ORDER_UNORDERED| |ordering|ORDER_ORDERED|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1ChannelClientState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/client_state \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/client_state', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryChannelClientStateResponse is the Response type for the Query/QueryChannelClientState RPC method
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"consensus_state": {
"@type": "@type..."
},
"client_id": "0x1234567890abcdef...",
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|---|---|---|---|---|
|» identified_client_state|object|false|none|IdentifiedClientState defines a client state with an additional clientidentifier field.|
|»» client_id|string|false|none|none|
|»» client_state|object|false|none|Any 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".JSON====The 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" }|
|»»» additionalProperties|any|false|none|none|
|»»» @type|string|false|none|A 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.|
|» proof|string(byte)|false|none|none|
|» proof_height|object|false|none|Normally 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_number|string(uint64)|false|none|none|
|»» revision_height|string(uint64)|false|none|none|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1ChannelConsensusState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/consensus_state/revision/string/height/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/consensus_state/revision/string/height/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| revision_number | path | string(uint64) | true | revision number of the consensus state |
| revision_height | path | string(uint64) | true | revision height of the consensus state |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
The result from the above endpoint looks like this:
{
"next_sequence_receive": "1000000",
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
Response Schema
Status Code 200
QueryChannelClientStateResponse is the Response type for the Query/QueryChannelClientState RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » consensus_state | object | false | none | Any 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".JSON====The 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" } |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » client_id | string | false | none | none |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1NextSequenceReceive
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/next_sequence \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/next_sequence', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence
NextSequenceReceive returns the next receive sequence for a given channel.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
Example responses
The result from the above endpoint looks like this:
{
"acknowledgements": [
{
"port_id": "0x1234567890abcdef...",
"channel_id": "0x1234567890abcdef...",
"sequence": "1000000"
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
},
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QuerySequenceResponse is the request type for the Query/QueryNextSequenceReceiveResponse RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » next_sequence_receive | string(uint64) | false | none | none |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1PacketAcknowledgements
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_acknowledgements \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_acknowledgements', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements
PacketAcknowledgements returns all the packet acknowledgements associated with a channel.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| packet_commitment_sequences | query | array[string] | false | list 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.
The result from the above endpoint looks like this:
{
"acknowledgement": "acknowledgement...",
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryPacketAcknowledgemetsResponse is the request type for the Query/QueryPacketAcknowledgements RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » acknowledgements | [object] | false | none | none |
| »» port_id | string | false | none | channel port identifier. |
| »» channel_id | string | false | none | channel unique identifier. |
| »» sequence | string(uint64) | false | none | packet sequence. |
| »» data | string(byte) | false | none | embedded data that represents packet state. |
| » pagination | object | false | none | PageResponse 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_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
| » height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1PacketAcknowledgement
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_acks/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_acks/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"commitments": [
{
"port_id": "0x1234567890abcdef...",
"channel_id": "0x1234567890abcdef...",
"sequence": "1000000"
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
},
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}
PacketAcknowledgement queries a stored packet acknowledgement hash.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| sequence | path | string(uint64) | true | packet sequence |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » acknowledgement | string(byte) | false | none | none |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1PacketCommitments
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
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
The result from the above endpoint looks like this:
{
"sequences": [
"1000000"
],
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
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.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryPacketCommitmentsResponse is the request type for the Query/QueryPacketCommitments RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » commitments | [object] | false | none | none |
| »» port_id | string | false | none | channel port identifier. |
| »» channel_id | string | false | none | channel unique identifier. |
| »» sequence | string(uint64) | false | none | packet sequence. |
| »» data | string(byte) | false | none | embedded data that represents packet state. |
| » pagination | object | false | none | PageResponse 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_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
| » height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1UnreceivedAcks
Code samples
> The result from the above endpoint looks like this:
```json
{
"sequences": [
"1000000"
],
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
curl --request GET \ --url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments/string/unreceived_acks \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments/string/unreceived_acks', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| packet_ack_sequences | path | array[string] | true | list of acknowledgement sequences |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryUnreceivedAcksResponse is the response type for the Query/UnreceivedAcks RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » sequences | [string] | false | none | none |
| » height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"commitment": "commitment...",
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
This operation does not require authentication
IbcCoreChannelV1UnreceivedPackets
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments/string/unreceived_packets \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments/string/unreceived_packets', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| packet_commitment_sequences | path | array[string] | true | list of packet sequences |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryUnreceivedPacketsResponse is the response type for the Query/UnreceivedPacketCommitments RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » sequences | [string] | false | none | none |
| » height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|
The result from the above endpoint looks like this:
{
"received": true,
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» additionalProperties|any|false|none|none|
|»» @type|string|false|none|A 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.|
This operation does not require authentication
IbcCoreChannelV1PacketCommitment
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_commitments/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}
PacketCommitment queries a stored packet commitment hash.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| sequence | path | string(uint64) | true | packet sequence |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » commitment | string(byte) | false | none | none |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
The result from the above endpoint looks like this:
{
"channels": [
{
"state": "state...",
"ordering": "ordering...",
"counterparty": {
"port_id": "0x1234567890abcdef...",
"channel_id": "0x1234567890abcdef..."
}
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
},
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|»» revision_height|string(uint64)|false|none|none|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1PacketReceipt
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_receipts/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/channels/string/ports/string/packet_receipts/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| channel_id | path | string | true | channel unique identifier |
| port_id | path | string | true | port unique identifier |
| sequence | path | string(uint64) | true | packet sequence |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » received | boolean | false | none | none |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreChannelV1ConnectionChannels
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/channel/v1/connections/string/channels \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/channel/v1/connections/string/channels', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/channel/v1/connections/{connection}/channels
The result from the above endpoint looks like this:
{
"params": {
"allowed_clients": [
"item..."
]
}
}
ConnectionChannels queries all the channels associated with a connection end.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| connection | path | string | true | connection unique identifier |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
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.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryConnectionChannelsResponse is the Response type for the Query/QueryConnectionChannels RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » channels | [object] | false | none | list of channels associated with a connection. |
The result from the above endpoint looks like this:
{
"client_states": [
{
"client_id": "0x1234567890abcdef...",
"client_state": {
"@type": "@type..."
}
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
|»» state|string|false|none|State defines if a channel is in one of the following states:CLOSED, INIT, TRYOPEN, OPEN 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.| |»» ordering|string|false|none|- 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| |»» counterparty|object|false|none|none| |»»» port_id|string|false|none|port on the counterparty chain which owns the other end of the channel.| |»»» channel_id|string|false|none|none| |»» connection_hops|[string]|false|none|none| |»» version|string|false|none|none| |»» port_id|string|false|none|none| |»» channel_id|string|false|none|none| |» pagination|object|false|none|PageResponse 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_key|string(byte)|false|none|none| |»» total|string(uint64)|false|none|none| |» height|object|false|none|Normally 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_number|string(uint64)|false|none|none| |»» revision_height|string(uint64)|false|none|none|
Enumerated Values
| Property | Value |
|---|---|
| state | STATE_UNINITIALIZED_UNSPECIFIED |
| state | STATE_INIT |
| state | STATE_TRYOPEN |
| state | STATE_OPEN |
| state | STATE_CLOSED |
| ordering | ORDER_NONE_UNSPECIFIED |
| ordering | ORDER_UNORDERED |
| ordering | ORDER_ORDERED |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreClientV1ClientParams
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/client/v1/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/client/v1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/client/v1/params
ClientParams queries all parameters of the ibc client.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryClientParamsResponse is the response type for the Query/ClientParams RPC method.
| Name | Type | Required | Restrictions | Description |
|---|
The result from the above endpoint looks like this:
{
"client_state": {
"@type": "@type..."
},
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|» params|object|false|none|params defines the parameters of the module.| |»» allowed_clients|[string]|false|none|allowed_clients defines the list of allowed client state types.|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreClientV1ClientStates
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/client/v1/client_states \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/client/v1/client_states', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/client/v1/client_states
ClientStates queries all the IBC light clients of a chain.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
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
The result from the above endpoint looks like this:
{
"status": "status..."
}
is set.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryClientStatesResponse is the response type for the Query/ClientStates RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » client_states | [object] | false | none | list of stored ClientStates of the chain. |
| »» client_id | string | false | none | none |
| »» client_state | object | false | none | Any 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".JSON====The 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" } |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| » pagination | object | false | none | PageResponse 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_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreClientV1ClientState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/client/v1/client_states/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/client/v1/client_states/string', {
headers: {
'Accept': '*/*'
> The result from the above endpoint looks like this:
```json
{
"consensus_states": [
{
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
},
"consensus_state": {
"@type": "@type..."
}
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
} }); const data = await response.json(); console.log(data); ```
GET /ibc/core/client/v1/client_states/{client_id}
ClientState queries an IBC light client.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| client_id | path | string | true | client state unique identifier |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » client_state | object | false | none | Any 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".JSON====The 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" } |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreClientV1ClientStatus
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/client/v1/client_status/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/client/v1/client_status/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/client/v1/client_status/{client_id}
Status queries the status of an IBC client.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| client_id | path | string | true | client unique identifier |
Example responses
The result from the above endpoint looks like this:
{
"consensus_state": {
"@type": "@type..."
},
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » status | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreClientV1ConsensusStates
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/client/v1/consensus_states/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/client/v1/consensus_states/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/client/v1/consensus_states/{client_id}
ConsensusStates queries all the consensus state associated with a given client.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| client_id | path | string | true | client identifier |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
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.
The result from the above endpoint looks like this:
{
"upgraded_client_state": {
"@type": "@type..."
}
}
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.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryConsensusStatesResponse is the response type for the Query/ConsensusStates RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » consensus_states | [object] | false | none | none |
| »» height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »»» revision_height | string(uint64) | false | none | none |
| »» consensus_state | object | false | none | Any 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".JSON====The 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" } |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| » pagination | object | false | none | PageResponse 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_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"upgraded_consensus_state": {
"@type": "@type..."
}
}
This operation does not require authentication
IbcCoreClientV1ConsensusState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/client/v1/consensus_states/string/revision/string/height/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/client/v1/consensus_states/string/revision/string/height/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| client_id | path | string | true | client identifier |
| revision_number | path | string(uint64) | true | consensus state revision number |
| revision_height | path | string(uint64) | true | consensus state revision height |
| latest_height | query | boolean | false | latest_height overrrides the height field and queries the latest stored |
Detailed descriptions
latest_height: latest_height overrrides the height field and queries the latest stored ConsensusState
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
The result from the above endpoint looks like this:
{
"connection_paths": [
"item..."
],
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
Response Schema
Status Code 200
QueryConsensusStateResponse is the response type for the Query/ConsensusState RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » consensus_state | object | false | none | Any 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".JSON====The 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" } |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreClientV1UpgradedClientState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/client/v1/upgraded_client_states \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/client/v1/upgraded_client_states', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/client/v1/upgraded_client_states
UpgradedClientState queries an Upgraded IBC light client.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
The result from the above endpoint looks like this:
{
"connections": [
{
"id": "0x1234567890abcdef...",
"client_id": "0x1234567890abcdef...",
"versions": [
{
"identifier": "0x1234567890abcdef...",
"features": [
"item..."
]
}
]
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
},
"height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|default|Default|An unexpected error response.|Inline|
Response Schema
Status Code 200
QueryUpgradedClientStateResponse is the response type for the Query/UpgradedClientState RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » upgraded_client_state | object | false | none | Any 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".JSON====The 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" } |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreClientV1UpgradedConsensusState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/client/v1/upgraded_consensus_states \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/client/v1/upgraded_consensus_states', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/client/v1/upgraded_consensus_states
UpgradedConsensusState queries an Upgraded IBC consensus state.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryUpgradedConsensusStateResponse is the response type for the Query/UpgradedConsensusState RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » upgraded_consensus_state | object | false | none | Any 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".JSON====The 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" } |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreConnectionV1ClientConnections
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/connection/v1/client_connections/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/connection/v1/client_connections/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
> The result from the above endpoint looks like this:
```json
{
"connection": {
"client_id": "0x1234567890abcdef...",
"versions": [
{
"identifier": "0x1234567890abcdef...",
"features": [
"item..."
]
}
],
"state": "state..."
},
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
`GET /ibc/core/connection/v1/client_connections/{client_id}`
*ClientConnections queries the connection paths associated with a client
state.*
### Parameters
|Name|In|Type|Required|Description|
|---|---|---|---|---|
|client_id|path|string|true|client identifier associated with a connection|
> Example responses
> 200 Response
### Responses
|Status|Meaning|Description|Schema|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|A successful response.|Inline|
|default|Default|An unexpected error response.|Inline|
### Response Schema
Status Code **200**
*QueryClientConnectionsResponse is the response type for the
Query/ClientConnections RPC method*
|Name|Type|Required|Restrictions|Description|
|---|---|---|---|---|
|» connection_paths|[string]|false|none|slice of all the connection paths associated with a client.|
|» proof|string(byte)|false|none|none|
|» proof_height|object|false|none|Normally 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_number|string(uint64)|false|none|none|
|»» revision_height|string(uint64)|false|none|none|
Status Code **default**
|Name|Type|Required|Restrictions|Description|
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» **additionalProperties**|any|false|none|none|
|»» @type|string|false|none|A 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 in`path/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.|
> This operation does not require authentication
## IbcCoreConnectionV1Connections
> Code samples
```shell
curl --request GET \
--url https://lcd.twilight.org/ibc/core/connection/v1/connections \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/connection/v1/connections', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/connection/v1/connections
Connections queries all the IBC connections of a chain.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
The result from the above endpoint looks like this:
{
"identified_client_state": {
"client_id": "0x1234567890abcdef...",
"client_state": {
"@type": "@type..."
}
},
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|pagination.count_total|query|boolean|false|count_total is set to true to indicate that the result set should include|
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.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryConnectionsResponse is the response type for the Query/Connections RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » connections | [object] | false | none | list of stored connections of the chain. |
| »» id | string | false | none | connection identifier. |
| »» client_id | string | false | none | client associated with this connection. |
| »» versions | [object] | false | none | none |
| »»» identifier | string | false | none | none |
| »»» features | [string] | false | none | none |
| »» state | string | false | none | current state of the connection end. |
| »» counterparty | object | false | none | counterparty chain associated with this connection. |
| »»» client_id | string | false | none | identifies the client on the counterparty chain associated with a givenconnection. |
| »»» connection_id | string | false | none | identifies the connection end on the counterparty chain associated with agiven connection. |
| »»» prefix | object | false | none | commitment merkle prefix of the counterparty chain. |
| »»»» key_prefix | string(byte) | false | none | none |
| »» delay_period | string(uint64) | false | none | delay period associated with this connection. |
| » pagination | object | false | none | PageResponse 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_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
| » height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| state | STATE_UNINITIALIZED_UNSPECIFIED |
| state | STATE_INIT |
The result from the above endpoint looks like this:
{
"consensus_state": {
"@type": "@type..."
},
"client_id": "0x1234567890abcdef...",
"proof": "proof...",
"proof_height": {
"revision_number": "1000000",
"revision_height": "1000000"
}
}
|state|STATE_TRYOPEN| |state|STATE_OPEN|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreConnectionV1Connection
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/connection/v1/connections/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/connection/v1/connections/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/connection/v1/connections/{connection_id}
Connection queries an IBC connection end.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| connection_id | path | string | true | connection unique identifier |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An 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.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » connection | object | false | none | ConnectionEnd 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_id | string | false | none | client associated with this connection. |
| »» versions | [object] | false | none | IBC version which can be utilised to determine encodings or protocols forchannels or packets utilising this connection. |
| »»» identifier | string | false | none | none |
| »»» features | [string] | false | none | none |
| »» state | string | false | none | current state of the connection end. |
| »» counterparty | object | false | none | counterparty chain associated with this connection. |
| »»» client_id | string | false | none | identifies the client on the counterparty chain associated with a givenconnection. |
| »»» connection_id | string | false | none | identifies the connection end on the counterparty chain associated with agiven connection. |
| »»» prefix | object | false | none | commitment merkle prefix of the counterparty chain. |
| »»»» key_prefix | string(byte) | false | none | none |
| »» delay_period | string(uint64) | false | none | delay period that must pass before a consensus state can be used forpacket-verification NOTE: delay period logic is only implemented by someclients. |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| state | STATE_UNINITIALIZED_UNSPECIFIED |
| state | STATE_INIT |
| state | STATE_TRYOPEN |
| state | STATE_OPEN |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreConnectionV1ConnectionClientState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/connection/v1/connections/string/client_state \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/connection/v1/connections/string/client_state', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /ibc/core/connection/v1/connections/{connection_id}/client_state
ConnectionClientState queries the client state associated with the connection.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| connection_id | path | string | true | connection identifier |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryConnectionClientStateResponse is the response type for the Query/ConnectionClientState RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » identified_client_state | object | false | none | IdentifiedClientState defines a client state with an additional clientidentifier field. |
| »» client_id | string | false | none | none |
| »» client_state | object | false | none | Any 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".JSON====The 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" } |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
IbcCoreConnectionV1ConnectionConsensusState
Code samples
curl --request GET \
--url https://lcd.twilight.org/ibc/core/connection/v1/connections/string/consensus_state/revision/string/height/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/ibc/core/connection/v1/connections/string/consensus_state/revision/string/height/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| connection_id | path | string | true | connection identifier |
| revision_number | path | string(uint64) | true | none |
| revision_height | path | string(uint64) | true | none |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryConnectionConsensusStateResponse is the response type for the Query/ConnectionConsensusState RPC method
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » consensus_state | object | false | none | Any 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".JSON====The 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" } |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » client_id | string | false | none | none |
| » proof | string(byte) | false | none | none |
| » proof_height | object | false | none | Normally 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_number | string(uint64) | false | none | none |
| »» revision_height | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Miscellaneous
CosmosEvidenceV1Beta1AllEvidence
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/evidence/v1beta1/evidence \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/evidence/v1beta1/evidence', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"evidence": [
{
"@type": "@type..."
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
GET /cosmos/evidence/v1beta1/evidence
AllEvidence queries all evidence.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryAllEvidenceResponse is the response type for the Query/AllEvidence RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » evidence | [object] | false | none | evidence returns all evidences. |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
| » pagination | object | false | none | pagination defines the pagination in the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
CosmosEvidenceV1Beta1Evidence
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/evidence/v1beta1/evidence/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/evidence/v1beta1/evidence/string', {
> The result from the above endpoint looks like this:
```json
{
"evidence": {
"@type": "@type..."
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /cosmos/evidence/v1beta1/evidence/{evidence_hash}
Evidence queries evidence based on evidence hash.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| evidence_hash | path | string(byte) | true | evidence_hash defines the hash of the requested evidence. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryEvidenceResponse is the response type for the Query/Evidence RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » evidence | object | false | none | evidence returns the requested evidence. |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
CosmosFeegrantV1Beta1Allowance
Code samples
> The result from the above endpoint looks like this:
```json
{
"allowance": {
"granter": "granter...",
"grantee": "grantee...",
"allowance": {
"@type": "@type..."
}
}
}
curl --request GET \ --url https://lcd.twilight.org/cosmos/feegrant/v1beta1/allowance/string/string \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/cosmos/feegrant/v1beta1/allowance/string/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}
Allowance returns fee granted to the grantee by the granter.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| granter | path | string | true | granter is the address of the user granting an allowance of their funds. |
| grantee | path | string | true | grantee is the address of the user being granted an allowance of another user's funds. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryAllowanceResponse is the response type for the Query/Allowance RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » allowance | object | false | none | allowance is a allowance granted for grantee by granter. |
| »» granter | string | false | none | granter is the address of the user granting an allowance of their funds. |
| »» grantee | string | false | none | grantee is the address of the user being granted an allowance of another user's funds. |
| »» allowance | object | false | none | allowance can be any of basic and filtered fee allowance. |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
The result from the above endpoint looks like this:
{
"allowances": [
{
"granter": "granter...",
"grantee": "grantee...",
"allowance": {
"@type": "@type..."
}
}
],
"pagination": {
"next_key": "next_key...",
"total": "1000000"
}
}
This operation does not require authentication
CosmosFeegrantV1Beta1Allowances
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/feegrant/v1beta1/allowances/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/feegrant/v1beta1/allowances/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/feegrant/v1beta1/allowances/{grantee}
Allowances returns all the grants for address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| grantee | path | string | true | none |
| pagination.key | query | string(byte) | false | key is a value returned in PageResponse.next_key to begin |
| pagination.offset | query | string(uint64) | false | offset is a numeric offset that can be used when key is unavailable. |
| pagination.limit | query | string(uint64) | false | limit is the total number of results to be returned in the result page. |
| pagination.count_total | query | boolean | false | count_total is set to true to indicate that the result set should include |
| pagination.reverse | query | boolean | false | reverse 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryAllowancesResponse is the response type for the Query/Allowances RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » allowances | [object] | false | none | allowances are allowance's granted for grantee by granter. |
| »» Grant is stored in the KVStore to record a grant with full context | object | false | none | none |
| »»» granter | string | false | none | granter is the address of the user granting an allowance of their funds. |
| »»» grantee | string | false | none | grantee is the address of the user being granted an allowance of another user's funds. |
| »»» allowance | object | false | none | allowance can be any of basic and filtered fee allowance. |
| »»»» additionalProperties | any | false | none | none |
| »»»» @type | string | false | none | A 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. |
| » pagination | object | false | none | pagination defines an pagination for the response. |
| »» next_key | string(byte) | false | none | none |
| »» total | string(uint64) | false | none | none |
Status Code default
|Name|Type|Required|Restrictions|Description|
The result from the above endpoint looks like this:
{
"annual_provisions": "annual_provisions..."
}
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» additionalProperties|any|false|none|none|
|»» @type|string|false|none|A 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.|
This operation does not require authentication
CosmosMintV1Beta1AnnualProvisions
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/mint/v1beta1/annual_provisions \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/mint/v1beta1/annual_provisions', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/mint/v1beta1/annual_provisions
AnnualProvisions current minting annual provisions value.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryAnnualProvisionsResponse is the response type for the Query/AnnualProvisions RPC method.
The result from the above endpoint looks like this:
{
"inflation": "inflation..."
}
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » annual_provisions | string(byte) | false | none | annual_provisions is the current minting annual provisions value. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
CosmosMintV1Beta1Inflation
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/mint/v1beta1/inflation \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/mint/v1beta1/inflation', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/mint/v1beta1/inflation
Inflation returns the current minting inflation value.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
The result from the above endpoint looks like this:
{
"params": {
"mint_denom": "mint_denom...",
"inflation_rate_change": "inflation_rate_change...",
"inflation_max": "inflation_max...",
"inflation_min": "inflation_min...",
"goal_bonded": "goal_bonded...",
"blocks_per_year": "1000000"
}
}
Response Schema
Status Code 200
QueryInflationResponse is the response type for the Query/Inflation RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » inflation | string(byte) | false | none | inflation is the current minting inflation value. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
CosmosMintV1Beta1Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/mint/v1beta1/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/mint/v1beta1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/mint/v1beta1/params
Params returns the total set of minting parameters.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
The result from the above endpoint looks like this:
{
"param": {
"subspace": "subspace...",
"key": "key...",
"value": "1000"
}
}
|default|Default|An unexpected error response.|Inline|
Response Schema
Status Code 200
QueryParamsResponse is the response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params defines the parameters of the module. |
| »» mint_denom | string | false | none | none |
| »» inflation_rate_change | string | false | none | none |
| »» inflation_max | string | false | none | none |
| »» inflation_min | string | false | none | none |
| »» goal_bonded | string | false | none | none |
| »» blocks_per_year | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
CosmosParamsV1Beta1Params
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/params/v1beta1/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/params/v1beta1/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /cosmos/params/v1beta1/params
Params queries a specific parameter of a module, given its subspace and key.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| subspace | query | string | false | subspace defines the module to query the parameter for. |
| key | query | string | false | key defines the key of the parameter in the subspace. |
The result from the above endpoint looks like this:
{
"height": "height..."
}
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » param | object | false | none | param defines the queried parameter. |
| »» subspace | string | false | none | none |
| »» key | string | false | none | none |
| »» value | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
CosmosUpgradeV1Beta1AppliedPlan
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/upgrade/v1beta1/applied_plan/string \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/upgrade/v1beta1/applied_plan/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"plan": {
"name": "name...",
"time": "time...",
"height": "height...",
"info": "info...",
"upgraded_client_state": {
"@type": "@type..."
}
}
}
GET /cosmos/upgrade/v1beta1/applied_plan/{name}
AppliedPlan queries a previously applied upgrade plan by its name.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| name | path | string | true | name is the name of the applied plan to query for. |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryAppliedPlanResponse is the response type for the Query/AppliedPlan RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » height | string(int64) | false | none | height is the block height at which the plan was applied. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
CosmosUpgradeV1Beta1CurrentPlan
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/upgrade/v1beta1/current_plan \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/upgrade/v1beta1/current_plan', {
headers: {
'Accept': '*/*'
> The result from the above endpoint looks like this:
```json
{
"module_versions": [
{
"name": "name...",
"version": "1000000"
}
]
}
} }); const data = await response.json(); console.log(data); ```
GET /cosmos/upgrade/v1beta1/current_plan
CurrentPlan queries the current upgrade plan.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryCurrentPlanResponse is the response type for the Query/CurrentPlan RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » plan | object | false | none | plan is the current upgrade plan. |
| »» name | string | false | none | Sets 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. |
| »» time | string(date-time) | false | none | Deprecated: 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. |
| »» height | string(int64) | false | none | The height at which the upgrade must be performed.Only used if Time is not set. |
| »» info | string | false | none | none |
| »» upgraded_client_state | object | false | none | Deprecated: UpgradedClientState field has been deprecated. IBC upgrade logic has beenmoved to the IBC module in the sub module 02-client.If this field is not empty, an error will be thrown. |
| »»» additionalProperties | any | false | none | none |
| »»» @type | string | false | none | A 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. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
CosmosUpgradeV1Beta1ModuleVersions
Code samples
curl --request GET \
--url https://lcd.twilight.org/cosmos/upgrade/v1beta1/module_versions \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/cosmos/upgrade/v1beta1/module_versions', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
> The result from the above endpoint looks like this:
```json
{
"upgraded_consensus_state": "upgraded_consensus_state..."
}
`GET /cosmos/upgrade/v1beta1/module_versions`
*ModuleVersions queries the list of module versions from state.*
Since: cosmos-sdk 0.43
### Parameters
|Name|In|Type|Required|Description|
|---|---|---|---|---|
|module_name|query|string|false|module_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
|Status|Meaning|Description|Schema|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|A successful response.|Inline|
|default|Default|An 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*
|Name|Type|Required|Restrictions|Description|
|---|---|---|---|---|
|» module_versions|[object]|false|none|module_versions is a list of module names with their consensus versions.|
|»» name|string|false|none|none|
|»» version|string(uint64)|false|none|none|
Status Code **default**
|Name|Type|Required|Restrictions|Description|
|---|---|---|---|---|
|» code|integer(int32)|false|none|none|
|» message|string|false|none|none|
|» details|[object]|false|none|none|
|»» **additionalProperties**|any|false|none|none|
|»» @type|string|false|none|A 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 in`path/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.|
> This operation does not require authentication
## CosmosUpgradeV1Beta1UpgradedConsensusState
> Code samples
```shell
curl --request GET \
--url https://lcd.twilight.org/cosmos/upgrade/v1beta1/upgraded_consensus_state/string \
--header 'Accept: */*'
The result from the above endpoint looks like this:
{
"attestations": [
{
"observed": true,
"votes": [
"item..."
],
"height": "1000000",
"proposal": {
"@type": "@type..."
}
}
]
}
const response = await fetch('https://lcd.twilight.org/cosmos/upgrade/v1beta1/upgraded_consensus_state/string', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
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)
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| last_height | path | string(int64) | true | last 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
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryUpgradedConsensusStateResponse is the response type for the Query/UpgradedConsensusState RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » upgraded_consensus_state | string(byte) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
TwilightprojectNyksForksGetAttestations
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilight-project/nyks/nyks/attestations \
--header 'Accept: */*'
The result from the above endpoint looks like this:
{
"params": {}
}
const response = await fetch('https://lcd.twilight.org/twilight-project/nyks/nyks/attestations', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /twilight-project/nyks/nyks/attestations
Queries a list of Attestations items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| limit | query | string(uint64) | false | limit defines how many attestations to limit in the response. |
| order_by | query | string | false | order_by provides ordering of atteststions by nonce in the response. Either |
| proposal_type | query | string | false | proposal_type allows filtering attestations by proposal type |
| height | query | string(uint64) | false | height allows filtering attestations by block height |
Detailed descriptions
order_by: order_by provides ordering of atteststions by nonce in the response. Either 'asc' or 'desc' can be provided. If no value is provided, it defaults to 'asc'.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » attestations | [object] | false | none | none |
»» Attestation is an aggregate of proposals that eventually becomes observed by |
all orchestrators
OBSERVED:
Observed indicates that >67% of validators have attested to the event,
and that the event should be executed by the state machine|object|false|none|The actual content of the proposals is passed in with the transaction making the proposaland then passed through the call stack alongside the attestation while it is processedthe key in which the attestation is stored is keyed on the exact details of the proposalbut there is no reason to store those exact details becuause the next message senderwill kindly provide you with them.|
|»»» observed|boolean|false|none|none|
|»»» votes|[string]|false|none|none|
|»»» height|string(uint64)|false|none|none|
|»»» proposal|object|false|none|Any 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".JSON====The 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" }|
|»»»» additionalProperties|any|false|none|none|
|»»»» @type|string|false|none|A 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.|
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
TwilightprojectNyksForksParams
Code samples
curl --request GET \
--url https://lcd.twilight.org/twilightproject/nyks/nyks/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/twilightproject/nyks/nyks/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /twilightproject/nyks/nyks/params
Parameters queries the parameters of the module.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | params holds all the parameters of this module. |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | A 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. |
This operation does not require authentication
Nyks Tendermint Queries
TendermintSpnMonitoringpConnectionChannelID
Code samples
curl --request GET \
--url https://lcd.twilight.org/tendermint/spn/monitoringp/connection_channel_id \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/tendermint/spn/monitoringp/connection_channel_id', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
The result from the above endpoint looks like this:
{
"ConnectionChannelID": {
"channelID": "0x1234567890abcdef..."
}
}
GET /tendermint/spn/monitoringp/connection_channel_id
Queries a ConnectionChannelID by index.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » ConnectionChannelID | object | false | none | none |
| »» channelID | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
TendermintSpnMonitoringpConsumerClientID
Code samples
curl --request GET \
--url https://lcd.twilight.org/tendermint/spn/monitoringp/consumer_client_id \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/tendermint/spn/monitoringp/consumer_client_id', {
> The result from the above endpoint looks like this:
```json
{
"ConsumerClientID": {
"clientID": "0x1234567890abcdef..."
}
}
headers: { 'Accept': '/' } }); const data = await response.json(); console.log(data); ```
GET /tendermint/spn/monitoringp/consumer_client_id
Queries a ConsumerClientID by index.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » ConsumerClientID | object | false | none | none |
| »» clientID | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication
TendermintSpnMonitoringpMonitoringInfo
Code samples
> The result from the above endpoint looks like this:
```json
{
"MonitoringInfo": {
"transmitted": true,
"signatureCounts": {
"blockCount": "1000000",
"counts": [
{
"opAddress": "0x1234567890abcdef...",
"RelativeSignatures": "RelativeSignatures..."
}
]
}
}
}
curl --request GET \ --url https://lcd.twilight.org/tendermint/spn/monitoringp/monitoring_info \ --header 'Accept: /' ```
const response = await fetch('https://lcd.twilight.org/tendermint/spn/monitoringp/monitoring_info', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /tendermint/spn/monitoringp/monitoring_info
Queries a MonitoringInfo by index.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » MonitoringInfo | object | false | none | none |
| »» transmitted | boolean | false | none | none |
| »» signatureCounts | object | false | none | none |
| »»» blockCount | string(uint64) | false | none | none |
| »»» counts | [object] | false | none | none |
| »»»» SignatureCount contains information of signature reporting for one specific validator with consensus address | ||||
| RelativeSignatures is the sum of all signatures relative to the validator set size | object | false | none | none |
| »»»»» opAddress | string | false | none | none |
| »»»»» RelativeSignatures | string | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
The result from the above endpoint looks like this:
{
"params": {
"lastBlockHeight": "lastBlockHeight...",
"consumerChainID": "0x1234567890abcdef...",
"consumerConsensusState": {
"nextValidatorsHash": "0x1234567890abcdef...",
"timestamp": "timestamp...",
"root": {
"hash": "0x1234567890abcdef..."
}
},
"consumerUnbondingPeriod": "consumerUnbondingPeriod...",
"consumerRevisionHeight": "1000000"
}
}
This operation does not require authentication
TendermintSpnMonitoringpParams
Code samples
curl --request GET \
--url https://lcd.twilight.org/tendermint/spn/monitoringp/params \
--header 'Accept: */*'
const response = await fetch('https://lcd.twilight.org/tendermint/spn/monitoringp/params', {
headers: {
'Accept': '*/*'
}
});
const data = await response.json();
console.log(data);
GET /tendermint/spn/monitoringp/params
Params queries the parameters of the module.
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | A successful response. | Inline |
| default | Default | An unexpected error response. | Inline |
Response Schema
Status Code 200
QueryParamsResponse is response type for the Query/Params RPC method.
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » params | object | false | none | Params defines the parameters for the module. |
| »» lastBlockHeight | string(int64) | false | none | none |
| »» consumerChainID | string | false | none | none |
| »» consumerConsensusState | object | false | none | none |
| »»» nextValidatorsHash | string | false | none | none |
| »»» timestamp | string | false | none | none |
| »»» root | object | false | none | none |
| »»»» hash | string | false | none | none |
| »» consumerUnbondingPeriod | string(int64) | false | none | none |
| »» consumerRevisionHeight | string(uint64) | false | none | none |
Status Code default
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » code | integer(int32) | false | none | none |
| » message | string | false | none | none |
| » details | [object] | false | none | none |
| »» additionalProperties | any | false | none | none |
| »» @type | string | false | none | none |
This operation does not require authentication