OpenAPI Specification
swagger: '2.0'
info:
title: HTTP API Console ABCI Info API
name: ''
description: ABCI APIs
tags:
- name: Info
description: Informations about the node APIs
paths:
/health:
get:
summary: Node heartbeat
tags:
- Info
operationId: health
description: 'Get node health. Returns empty result (200 OK) on success, no response - in case of an error.
'
responses:
'200':
description: Gets Node Health
content:
application/json:
schema:
$ref: '#/components/schemas/EmptyResponse'
'500':
description: empty error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/status:
get:
summary: Node Status
operationId: status
tags:
- Info
description: 'Get Tendermint status including node info, pubkey, latest block hash, app hash, block height, current max peer height, and time.
'
responses:
'200':
description: Status of the node
content:
application/json:
schema:
$ref: '#/components/schemas/StatusResponse'
'500':
description: empty error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/lag_status:
get:
summary: Lag Status
operationId: lag_status
tags:
- Info
description: 'Get Tendermint lag status including latest height, current max peer height, and lag height.
'
responses:
'200':
description: Lag Status of the node and is not lagging
content:
application/json:
schema:
$ref: '#/components/schemas/LagStatusResponse'
'299':
description: Lag Status of the node and is lagging over the threshold
content:
application/json:
schema:
$ref: '#/components/schemas/LagStatusResponse'
'500':
description: lag is high error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/net_info:
get:
summary: Network information
operationId: net_info
tags:
- Info
description: 'Get network info.
'
responses:
'200':
description: empty answer
content:
application/json:
schema:
$ref: '#/components/schemas/NetInfoResponse'
'500':
description: empty error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/blockchain:
get:
summary: 'Get block headers (max: 20) for minHeight <= height <= maxHeight.'
operationId: blockchain
parameters:
- in: query
name: minHeight
description: Minimum block height to return
schema:
type: integer
example: 1
- in: query
name: maxHeight
description: Maximum block height to return
schema:
type: integer
example: 2
tags:
- Info
description: 'Get block headers for minHeight <= height maxHeight.
If maxHeight does not yet exist, blocks up to the current height will
be returned. If minHeight does not exist (due to pruning), earliest
existing height will be used.
At most 20 items will be returned. Block headers are returned in
descending order (highest first).
'
responses:
'200':
description: Block headers, returned in descending order (highest first).
content:
application/json:
schema:
$ref: '#/components/schemas/BlockchainResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/header:
get:
summary: Get the header at a specified height
operationId: header
parameters:
- in: query
name: height
schema:
type: integer
default: 0
example: 1
description: height to return. If no height is provided, it will fetch the latest height.
tags:
- Info
description: 'Retrieve the block header corresponding to a specified height.
'
responses:
'200':
description: Header information.
content:
application/json:
schema:
$ref: '#/components/schemas/HeaderResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/header_by_hash:
get:
summary: Get header by hash
operationId: header_by_hash
parameters:
- in: query
name: hash
description: header hash
required: true
schema:
type: string
example: '0xD70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED'
tags:
- Info
description: 'Retrieve the block header corresponding to a block hash.
'
responses:
'200':
description: Header information.
content:
application/json:
schema:
$ref: '#/components/schemas/HeaderResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/block:
get:
summary: Get block at a specified height
operationId: block
parameters:
- in: query
name: height
schema:
type: integer
default: 0
example: 1
description: height to return. If no height is provided, it will fetch the latest block.
tags:
- Info
description: 'Get Block.
'
responses:
'200':
description: Block information.
content:
application/json:
schema:
$ref: '#/components/schemas/BlockResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/block_by_hash:
get:
summary: Get block by hash
operationId: block_by_hash
parameters:
- in: query
name: hash
description: block hash
required: true
schema:
type: string
example: '0xD70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED'
tags:
- Info
description: 'Get Block By Hash.
'
responses:
'200':
description: Block information.
content:
application/json:
schema:
$ref: '#/components/schemas/BlockResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/block_results:
get:
summary: Get block results at a specified height
operationId: block_results
parameters:
- in: query
name: height
description: height to return. If no height is provided, it will fetch information regarding the latest block.
schema:
type: integer
default: 0
example: 1
tags:
- Info
description: 'Get block_results.
'
responses:
'200':
description: Block results.
content:
application/json:
schema:
$ref: '#/components/schemas/BlockSearchResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/commit:
get:
summary: Get commit results at a specified height
operationId: commit
parameters:
- in: query
name: height
description: height to return. If no height is provided, it will fetch commit information regarding the latest block.
schema:
type: integer
default: 0
example: 1
tags:
- Info
description: 'Get Commit.
'
responses:
'200':
description: 'Commit results.
canonical switches from false to true for block H once block H+1 has been committed. Until then it''s subjective and only reflects what this node has seen so far.
'
content:
application/json:
schema:
$ref: '#/components/schemas/CommitResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/validators:
get:
summary: Get validator set at a specified height
operationId: validators
parameters:
- in: query
name: height
description: height to return. If no height is provided, it will fetch validator set which corresponds to the latest block.
schema:
type: integer
default: 0
example: 1
- in: query
name: page
description: Page number (1-based)
required: false
schema:
type: integer
default: 1
example: 1
- in: query
name: per_page
description: 'Number of entries per page (max: 100)'
required: false
schema:
type: integer
example: 30
default: 30
tags:
- Info
description: 'Get Validators. Validators are sorted first by voting power (descending), then by address (ascending).
'
responses:
'200':
description: Commit results.
content:
application/json:
schema:
$ref: '#/components/schemas/ValidatorsResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/genesis:
get:
summary: Get Genesis
operationId: genesis
tags:
- Info
description: 'Get the genesis document.
'
responses:
'200':
description: Genesis results.
content:
application/json:
schema:
$ref: '#/components/schemas/GenesisResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/genesis_chunked:
get:
summary: Get Genesis in paginated chunks
operationId: genesis_chunked
tags:
- Info
description: 'Get genesis document in a paginated/chunked format to make it
easier to iterate through larger genesis structures.
'
parameters:
- in: query
name: chunkID
description: Sequence number of the chunk to download.
schema:
type: integer
default: 0
example: 1
responses:
'200':
description: Genesis results.
content:
application/json:
schema:
$ref: '#/components/schemas/GenesisChunkedResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/dump_consensus_state:
get:
summary: Get consensus state
operationId: dump_consensus_state
tags:
- Info
description: 'Get consensus state.
Not safe to call from inside the ABCI application during a block execution.
'
responses:
'200':
description: 'Complete consensus state.
See https://pkg.go.dev/github.com/tendermint/tendermint/types?tab=doc#Vote.String for Vote string description.
'
content:
application/json:
schema:
$ref: '#/components/schemas/DumpConsensusResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/consensus_state:
get:
summary: Get consensus state
operationId: consensus_state
tags:
- Info
description: 'Get consensus state.
Not safe to call from inside the ABCI application during a block execution.
'
responses:
'200':
description: consensus state results.
content:
application/json:
schema:
$ref: '#/components/schemas/ConsensusStateResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/consensus_params:
get:
summary: Get consensus parameters
operationId: consensus_params
parameters:
- in: query
name: height
description: height to return. If no height is provided, it will fetch commit information regarding the latest block.
schema:
type: integer
default: 0
example: 1
tags:
- Info
description: 'Get consensus parameters.
'
responses:
'200':
description: consensus parameters results.
content:
application/json:
schema:
$ref: '#/components/schemas/ConsensusParamsResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/unconfirmed_txs:
get:
summary: Get the list of unconfirmed transactions
operationId: unconfirmed_txs
parameters:
- in: query
name: page
description: Page number (1-based)
required: false
schema:
type: integer
default: 1
example: 1
- in: query
name: per_page
description: 'Number of entries per page (max: 100)'
required: false
schema:
type: integer
example: 100
default: 30
tags:
- Info
description: 'Get list of unconfirmed transactions
'
responses:
'200':
description: List of unconfirmed transactions
content:
application/json:
schema:
$ref: '#/components/schemas/UnconfirmedTransactionsResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/num_unconfirmed_txs:
get:
summary: Get data about unconfirmed transactions
operationId: num_unconfirmed_txs
tags:
- Info
description: 'Get data about unconfirmed transactions
'
responses:
'200':
description: status about unconfirmed transactions
content:
application/json:
schema:
$ref: '#/components/schemas/NumUnconfirmedTransactionsResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/tx_search:
get:
summary: Search for transactions
description: 'Search for transactions w/ their results.
See /subscribe for the query syntax.
'
operationId: tx_search
parameters:
- in: query
name: query
description: Query
required: true
schema:
type: string
example: tx.height=1000
- in: query
name: prove
description: Include proofs of the transactions inclusion in the block
required: false
schema:
type: boolean
default: false
example: true
- in: query
name: page
description: Page number (1-based)
required: false
schema:
type: integer
default: 1
example: 1
- in: query
name: per_page
description: 'Number of entries per page (max: 100)'
required: false
schema:
type: integer
default: 30
example: 30
- in: query
name: order_by
description: Order in which transactions are sorted ("asc" or "desc"), by height & index. If empty, default sorting will be still applied.
required: false
schema:
type: string
default: desc
example: asc
tags:
- Info
responses:
'200':
description: List of transactions
content:
application/json:
schema:
$ref: '#/components/schemas/TxSearchResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/block_search:
get:
summary: Search for blocks by BeginBlock and EndBlock events
description: 'Search for blocks by BeginBlock and EndBlock events.
See /subscribe for the query syntax.
'
operationId: block_search
parameters:
- in: query
name: query
description: Query
required: true
schema:
type: string
example: block.height > 1000 AND valset.changed > 0
- in: query
name: page
description: Page number (1-based)
required: false
schema:
type: integer
default: 1
example: 1
- in: query
name: per_page
description: 'Number of entries per page (max: 100)'
required: false
schema:
type: integer
default: 30
example: 30
- in: query
name: order_by
description: Order in which blocks are sorted ("asc" or "desc"), by height. If empty, default sorting will be still applied.
required: false
schema:
type: string
default: desc
example: asc
tags:
- Info
responses:
'200':
description: List of paginated blocks matching the search criteria.
content:
application/json:
schema:
$ref: '#/components/schemas/BlockResultsResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/tx:
get:
summary: Get transactions by hash
operationId: tx
parameters:
- in: query
name: hash
description: transaction Hash to retrive
required: true
schema:
type: string
example: '0xD70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED'
- in: query
name: prove
description: Include proofs of the transactions inclusion in the block
required: false
schema:
type: boolean
example: true
default: false
tags:
- Info
description: 'Get a transaction
'
responses:
'200':
description: Get a transaction
content:
application/json:
schema:
$ref: '#/components/schemas/TxResponse'
'500':
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
components:
schemas:
EmptyResponse:
description: Empty Response
allOf:
- $ref: '#/components/schemas/JSONRPC'
- type: object
properties:
result:
type: object
additionalProperties: {}
ConsensusParams:
type: object
nullable: true
required:
- block
- evidence
- validator
properties:
block:
type: object
required:
- max_bytes
- max_gas_wanted
- max_gas
- time_iota_ms
properties:
max_bytes:
type: string
example: '22020096'
max_gas:
type: string
example: '1000'
time_iota_ms:
type: string
example: '1000'
evidence:
type: object
required:
- max_age
properties:
max_age:
type: string
example: '100000'
validator:
type: object
required:
- pub_key_types
properties:
pub_key_types:
type: array
items:
type: string
example:
- ed25519
Blockchain:
type: object
required:
- last_height
- block_metas
properties:
last_height:
type: string
example: '1276718'
block_metas:
type: array
items:
$ref: '#/components/schemas/BlockMeta'
HeaderResponse:
description: Block Header info
allOf:
- $ref: '#/components/schemas/JSONRPC'
- type: object
properties:
result:
$ref: '#/components/schemas/BlockHeader'
NodeInfo:
type: object
properties:
protocol_version:
$ref: '#/components/schemas/ProtocolVersion'
id:
type: string
example: 5576458aef205977e18fd50b274e9b5d9014525a
listen_addr:
type: string
example: tcp://0.0.0.0:26656
network:
type: string
example: cosmoshub-2
version:
type: string
example: 0.32.1
channels:
type: string
example: '4020212223303800'
moniker:
type: string
example: moniker-node
other:
type: object
properties:
tx_index:
type: string
example: 'on'
rpc_address:
type: string
example: tcp://0.0.0.0:26657
PubKey:
type: object
properties:
type:
type: string
example: tendermint/PubKeyEd25519
value:
type: string
example: A6DoBUypNtUAyEHWtQ9bFjfNg8Bo9CrnkUGl6k6OHN4=
LagStatusResponse:
description: Lag Status Response
allOf:
- $ref: '#/components/schemas/JSONRPC'
- type: object
properties:
result:
$ref: '#/components/schemas/LagStatus'
ProtocolVersion:
type: object
properties:
p2p:
type: string
example: '7'
block:
type: string
example: '10'
app:
type: string
example: '0'
ErrorResponse:
description: Error Response
allOf:
- $ref: '#/components/schemas/JSONRPC'
- type: object
properties:
error:
type: string
example: Description of failure
NetInfoResponse:
description: NetInfo Response
allOf:
- $ref: '#/components/schemas/JSONRPC'
- type: object
properties:
result:
$ref: '#/components/schemas/NetInfo'
ValidatorPriority:
type: object
properties:
address:
type: string
example: 000001E443FD237E4B616E2FA69DF4EE3D49A94F
pub_key:
required:
- type
- value
properties:
type:
type: string
example: tendermint/PubKeyEd25519
value:
type: string
example: 9tK9IT+FPdf2qm+5c2qaxi10sWP+3erWTKgftn2PaQM=
type: object
voting_power:
type: string
example: '239727'
proposer_priority:
type: string
example: '-11896414'
BlockMeta:
type: object
properties:
block_id:
$ref: '#/components/schemas/BlockID'
block_size:
type: integer
example: 1000000
header:
$ref: '#/components/schemas/BlockHeader'
num_txs:
type: string
example: '54'
ConsensusStateResponse:
type: object
required:
- jsonrpc
- id
- result
properties:
jsonrpc:
type: string
example: '2.0'
id:
type: integer
example: 0
result:
required:
- round_state
properties:
round_state:
required:
- height/round/step
- start_time
- proposal_block_hash
- locked_block_hash
- valid_block_hash
- height_vote_set
- proposer
properties:
height/round/step:
type: string
example: 1262197/0/8
start_time:
type: string
example: '2019-08-01T11:52:38.962730289Z'
proposal_block_hash:
type: string
example: 634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009
locked_block_hash:
type: string
example: 634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009
valid_block_hash:
type: string
example: 634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009
height_vote_set:
type: array
items:
type: object
properties:
round:
type: integer
example: 0
prevotes:
type: array
items:
type: string
example:
- Vote{0:000001E443FD 1262197/00/1(Prevote) 634ADAF1F402 7BB974E1BA40 @ 2019-08-01T11:52:35.513572509Z}
- nil-Vote
prevotes_bit_array:
type: string
example: BA{100:xxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx} 169753436/170151262 = 1.00
precommits:
type: array
items:
type: string
example:
- Vote{5:18C78D135C9D 1262197/00/2(Precommit) 634ADAF1F402 8B5EFFFEABCD @ 2019-08-01T11:52:36.25600005Z}
- nil-Vote
precommits_bit_array:
type: string
example: BA{100:xxxxxx_xxxxx_xxxx_x_xxx_xx_xx_xx__x_x_x__xxxxxxxxxxxxxx_xxxx_xx_xxxxxx_xxxxxxxx_xxxx_xxx_x_xxxx__xxx} 118726247/170151262 = 0.70
proposer:
type: object
properties:
address:
type: string
example: D540AB022088612AC74B287D076DBFBC4A377A2E
index:
type: integer
example: 0
type: object
type: object
Event:
type: object
properties:
key:
type: string
example: YWN0aW9u
value:
type: string
example: c2VuZA==
index:
type: boolean
example: false
GenesisResponse:
type: object
required:
- jsonrpc
- id
- result
properties:
jsonrpc:
type: string
example: '2.0'
id:
type: integer
example: 0
result:
type: object
required:
- genesis
properties:
genesis:
type: object
required:
- genesis_time
- chain_id
- initial_height
- consensus_params
- validators
- app_hash
properties:
genesis_time:
type: string
example: '2019-04-22T17:00:00Z'
chain_id:
type: string
example: cosmoshub-2
initial_height:
type: string
example: '2'
consensus_params:
$ref: '#/components/schemas/ConsensusParams'
validators:
type: array
items:
type: object
properties:
address:
type: string
example: B00A6323737F321EB0B8D59C6FD497A14B60938A
pub_key:
required:
- type
- value
properties:
type:
type: string
example: tendermint/PubKeyEd25519
value:
type: string
example: cOQZvh/h9ZioSeUMZB/1Vy1Xo5x2sjrVjlE/qHnYifM=
type: object
power:
type: string
example: '9328525'
name:
type: string
example: Certus One
app_hash:
type: string
example: ''
app_state:
properties: {}
type: object
GenesisChunkedResponse:
type: object
required:
- jsonrpc
- id
- result
properties:
jsonrpc:
type: string
example: '2.0'
id:
type: integer
example: 0
result:
required:
- chunk
- total
- data
properties:
chunk:
type: integer
example: 0
total:
type: integer
example: 1
data:
type: string
example: Z2VuZXNpcwo=
CommitResponse:
type: object
required:
- jsonrpc
- id
- result
properties:
jsonrpc:
type: string
example: '2.0'
id:
type: integer
example: 0
result:
required:
- signed_header
- canonical
properties:
signed_header:
required:
- header
- commit
properties:
header:
$ref: '#/components/schemas/BlockHeader'
commit:
required:
- height
- round
- block_id
- signatures
properties:
height:
type: string
example: '1311801'
round:
type: integer
example: 0
block_id:
$ref: '#/components/schemas/BlockID'
signatures:
type: array
items:
type: object
properties:
block_id_flag:
type: integer
example: 2
validator_address:
type: string
example: 000001E443FD237E4B616E2FA69DF4EE3D49A94F
timestamp:
type: string
example: '2019-04-22T17:01:58.376629719Z'
signature:
# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sei/refs/heads/main/openapi/sei-info-api-openapi.yml