github.com/number571/tendermint@v0.34.11-gost/rpc/openapi/openapi.yaml (about)

     1  openapi: 3.0.0
     2  info:
     3    title: Tendermint RPC
     4    contact:
     5      name: Tendermint RPC
     6      url: https://github.com/number571/tendermint/issues/new/choose
     7    description: |
     8      Tendermint supports the following RPC protocols:
     9  
    10      * URI over HTTP
    11      * JSONRPC over HTTP
    12      * JSONRPC over websockets
    13  
    14      ## Configuration
    15  
    16      RPC can be configured by tuning parameters under `[rpc]` table in the
    17      `$TMHOME/config/config.toml` file or by using the `--rpc.X` command-line
    18      flags.
    19  
    20      Default rpc listen address is `tcp://0.0.0.0:26657`.
    21      To set another address, set the `laddr` config parameter to desired value.
    22      CORS (Cross-Origin Resource Sharing) can be enabled by setting
    23      `cors_allowed_origins`, `cors_allowed_methods`, `cors_allowed_headers`
    24      config parameters.
    25  
    26      ## Arguments
    27  
    28      Arguments which expect strings or byte arrays may be passed as quoted
    29      strings, like `"abc"` or as `0x`-prefixed strings, like `0x616263`.
    30  
    31      ## URI/HTTP
    32  
    33      A REST like interface.
    34  
    35          curl localhost:26657/block?height=5
    36  
    37      ## JSONRPC/HTTP
    38  
    39      JSONRPC requests can be POST'd to the root RPC endpoint via HTTP.
    40  
    41          curl --header "Content-Type: application/json" --request POST --data '{"method": "block", "params": ["5"], "id": 1}' localhost:26657
    42  
    43      ## JSONRPC/websockets
    44  
    45      JSONRPC requests can be also made via websocket.
    46      The websocket endpoint is at `/websocket`, e.g. `localhost:26657/websocket`.
    47      Asynchronous RPC functions like event `subscribe` and `unsubscribe` are
    48      only available via websockets.
    49  
    50      Example using https://github.com/hashrocket/ws:
    51  
    52          ws ws://localhost:26657/websocket
    53          > { "jsonrpc": "2.0", "method": "subscribe", "params": ["tm.event='NewBlock'"], "id": 1 }
    54    version: "Master"
    55    license:
    56      name: Apache 2.0
    57      url: https://github.com/number571/tendermint/blob/master/LICENSE
    58  servers:
    59    - url: https://rpc.cosmos.network
    60      description: Cosmos mainnet node to interact with the Tendermint RPC
    61    - url: http://localhost:26657
    62      description: Interact with the Tendermint RPC locally on your device
    63  tags:
    64    - name: Websocket
    65      description: Subscribe/unsubscribe are reserved for websocket events.
    66    - name: Info
    67      description: Informations about the node APIs
    68    - name: Tx
    69      description: Transactions broadcast APIs
    70    - name: ABCI
    71      description: ABCI APIs
    72    - name: Evidence
    73      description: Evidence APIs
    74    - name: Unsafe
    75      description: Unsafe APIs
    76  paths:
    77    /broadcast_tx_sync:
    78      get:
    79        summary: Returns with the response from CheckTx. Does not wait for DeliverTx result.
    80        tags:
    81          - Tx
    82        operationId: broadcast_tx_sync
    83        description: |
    84          If you want to be sure that the transaction is included in a block, you can
    85          subscribe for the result using JSONRPC via a websocket. See
    86          https://docs.tendermint.com/master/app-dev/subscribing-to-events-via-websocket.html
    87          If you haven't received anything after a couple of blocks, resend it. If the
    88          same happens again, send it to some other node. A few reasons why it could
    89          happen:
    90  
    91          1. malicious node can drop or pretend it had committed your tx
    92          2. malicious proposer (not necessary the one you're communicating with) can
    93          drop transactions, which might become valid in the future
    94          (https://github.com/number571/tendermint/issues/3322)
    95  
    96  
    97          Please refer to
    98          https://docs.tendermint.com/master/tendermint-core/using-tendermint.html#formatting
    99          for formatting/encoding rules.
   100        parameters:
   101          - in: query
   102            name: tx
   103            required: true
   104            schema:
   105              type: string
   106            example: "456"
   107            description: The transaction
   108        responses:
   109          "200":
   110            description: Empty
   111            content:
   112              application/json:
   113                schema:
   114                  $ref: "#/components/schemas/BroadcastTxResponse"
   115          "500":
   116            description: Error
   117            content:
   118              application/json:
   119                schema:
   120                  $ref: "#/components/schemas/ErrorResponse"
   121    /broadcast_tx_async:
   122      get:
   123        summary: Returns right away, with no response. Does not wait for CheckTx nor DeliverTx results.
   124        tags:
   125          - Tx
   126        operationId: broadcast_tx_async
   127        description: |
   128          If you want to be sure that the transaction is included in a block, you can
   129          subscribe for the result using JSONRPC via a websocket. See
   130          https://docs.tendermint.com/master/app-dev/subscribing-to-events-via-websocket.html
   131          If you haven't received anything after a couple of blocks, resend it. If the
   132          same happens again, send it to some other node. A few reasons why it could
   133          happen:
   134  
   135          1. malicious node can drop or pretend it had committed your tx
   136          2. malicious proposer (not necessary the one you're communicating with) can
   137          drop transactions, which might become valid in the future
   138          (https://github.com/number571/tendermint/issues/3322)
   139          3. node can be offline
   140  
   141          Please refer to
   142          https://docs.tendermint.com/master/tendermint-core/using-tendermint.html#formatting
   143          for formatting/encoding rules.
   144        parameters:
   145          - in: query
   146            name: tx
   147            required: true
   148            schema:
   149              type: string
   150              example: "123"
   151            description: The transaction
   152        responses:
   153          "200":
   154            description: empty answer
   155            content:
   156              application/json:
   157                schema:
   158                  $ref: "#/components/schemas/BroadcastTxResponse"
   159          "500":
   160            description: empty error
   161            content:
   162              application/json:
   163                schema:
   164                  $ref: "#/components/schemas/ErrorResponse"
   165    /broadcast_tx_commit:
   166      get:
   167        summary: Returns with the responses from CheckTx and DeliverTx.
   168        tags:
   169          - Tx
   170        operationId: broadcast_tx_commit
   171        description: |
   172          IMPORTANT: use only for testing and development. In production, use
   173          BroadcastTxSync or BroadcastTxAsync. You can subscribe for the transaction
   174          result using JSONRPC via a websocket. See
   175          https://docs.tendermint.com/master/app-dev/subscribing-to-events-via-websocket.html
   176  
   177          CONTRACT: only returns error if mempool.CheckTx() errs or if we timeout
   178          waiting for tx to commit.
   179  
   180          If CheckTx or DeliverTx fail, no error will be returned, but the returned result
   181          will contain a non-OK ABCI code.
   182  
   183          Please refer to
   184          https://docs.tendermint.com/master/tendermint-core/using-tendermint.html#formatting
   185          for formatting/encoding rules.
   186        parameters:
   187          - in: query
   188            name: tx
   189            required: true
   190            schema:
   191              type: string
   192              example: "785"
   193            description: The transaction
   194        responses:
   195          "200":
   196            description: empty answer
   197            content:
   198              application/json:
   199                schema:
   200                  $ref: "#/components/schemas/BroadcastTxCommitResponse"
   201          "500":
   202            description: empty error
   203            content:
   204              application/json:
   205                schema:
   206                  $ref: "#/components/schemas/ErrorResponse"
   207    /check_tx:
   208      get:
   209        summary: Checks the transaction without executing it.
   210        tags:
   211          - Tx
   212        operationId: check_tx
   213        description: |
   214          The transaction won't be added to the mempool.
   215  
   216          Please refer to
   217          https://docs.tendermint.com/master/tendermint-core/using-tendermint.html#formatting
   218          for formatting/encoding rules.
   219        parameters:
   220          - in: query
   221            name: tx
   222            required: true
   223            schema:
   224              type: string
   225              example: "785"
   226            description: The transaction
   227        responses:
   228          "200":
   229            description: ABCI application's CheckTx response
   230            content:
   231              application/json:
   232                schema:
   233                  $ref: "#/components/schemas/CheckTxResponse"
   234          "500":
   235            description: empty error
   236            content:
   237              application/json:
   238                schema:
   239                  $ref: "#/components/schemas/ErrorResponse"
   240    /subscribe:
   241      get:
   242        summary: Subscribe for events via WebSocket.
   243        tags:
   244          - Websocket
   245        operationId: subscribe
   246        description: |
   247          To tell which events you want, you need to provide a query. query is a
   248          string, which has a form: "condition AND condition ..." (no OR at the
   249          moment). condition has a form: "key operation operand". key is a string with
   250          a restricted set of possible symbols ( \t\n\r\\()"'=>< are not allowed).
   251          operation can be "=", "<", "<=", ">", ">=", "CONTAINS" AND "EXISTS". operand
   252          can be a string (escaped with single quotes), number, date or time.
   253  
   254          Examples:
   255                tm.event = 'NewBlock'               # new blocks
   256                tm.event = 'CompleteProposal'       # node got a complete proposal
   257                tm.event = 'Tx' AND tx.hash = 'XYZ' # single transaction
   258                tm.event = 'Tx' AND tx.height = 5   # all txs of the fifth block
   259                tx.height = 5                       # all txs of the fifth block
   260  
   261          Tendermint provides a few predefined keys: tm.event, tx.hash and tx.height.
   262          Note for transactions, you can define additional keys by providing events with
   263          DeliverTx response.
   264  
   265          import (
   266              abci "github.com/number571/tendermint/abci/types"
   267              "github.com/number571/tendermint/libs/pubsub/query"
   268          )
   269  
   270          abci.ResponseDeliverTx{
   271            Events: []abci.Event{
   272                {
   273                    Type: "rewards.withdraw",
   274                    Attributes: abci.EventAttribute{
   275                        {Key: []byte("address"), Value: []byte("AddrA"), Index: true},
   276                        {Key: []byte("source"), Value: []byte("SrcX"), Index: true},
   277                        {Key: []byte("amount"), Value: []byte("..."), Index: true},
   278                        {Key: []byte("balance"), Value: []byte("..."), Index: true},
   279                    },
   280                },
   281                {
   282                    Type: "rewards.withdraw",
   283                    Attributes: abci.EventAttribute{
   284                        {Key: []byte("address"), Value: []byte("AddrB"), Index: true},
   285                        {Key: []byte("source"), Value: []byte("SrcY"), Index: true},
   286                        {Key: []byte("amount"), Value: []byte("..."), Index: true},
   287                        {Key: []byte("balance"), Value: []byte("..."), Index: true},
   288                    },
   289                },
   290                {
   291                    Type: "transfer",
   292                    Attributes: abci.EventAttribute{
   293                        {Key: []byte("sender"), Value: []byte("AddrC"), Index: true},
   294                        {Key: []byte("recipient"), Value: []byte("AddrD"), Index: true},
   295                        {Key: []byte("amount"), Value: []byte("..."), Index: true},
   296                    },
   297                },
   298            },
   299          }
   300  
   301          All events are indexed by a composite key of the form {eventType}.{evenAttrKey}.
   302          In the above examples, the following keys would be indexed:
   303             - rewards.withdraw.address
   304             - rewards.withdraw.source
   305             - rewards.withdraw.amount
   306             - rewards.withdraw.balance
   307             - transfer.sender
   308             - transfer.recipient
   309             - transfer.amount
   310  
   311          Multiple event types with duplicate keys are allowed and are meant to
   312          categorize unique and distinct events. In the above example, all events
   313          indexed under the key `rewards.withdraw.address` will have the following
   314          values stored and queryable:
   315  
   316             - AddrA
   317             - AddrB
   318  
   319          To create a query for txs where address AddrA withdrew rewards:
   320          query.MustParse("tm.event = 'Tx' AND rewards.withdraw.address = 'AddrA'")
   321  
   322          To create a query for txs where address AddrA withdrew rewards from source Y:
   323          query.MustParse("tm.event = 'Tx' AND rewards.withdraw.address = 'AddrA' AND rewards.withdraw.source = 'Y'")
   324  
   325          To create a query for txs where AddrA transferred funds:
   326          query.MustParse("tm.event = 'Tx' AND transfer.sender = 'AddrA'")
   327  
   328          The following queries would return no results:
   329          query.MustParse("tm.event = 'Tx' AND transfer.sender = 'AddrZ'")
   330          query.MustParse("tm.event = 'Tx' AND rewards.withdraw.address = 'AddrZ'")
   331          query.MustParse("tm.event = 'Tx' AND rewards.withdraw.source = 'W'")
   332  
   333          See list of all possible events here
   334          https://godoc.org/github.com/number571/tendermint/types#pkg-constants
   335  
   336          For complete query syntax, check out
   337          https://godoc.org/github.com/number571/tendermint/libs/pubsub/query.
   338  
   339          ```go
   340          import rpchttp "github.com/tendermint/rpc/client/http"
   341          import "github.com/number571/tendermint/types"
   342  
   343          client := rpchttp.New("tcp://0.0.0.0:26657")
   344          err := client.Start()
   345          if err != nil {
   346            handle error
   347          }
   348          defer client.Stop()
   349          ctx, cancel := context.WithTimeout(context.Background(), 1 * time.Second)
   350          defer cancel()
   351          query := "tm.event = 'Tx' AND tx.height = 3"
   352          txs, err := client.Subscribe(ctx, "test-client", query)
   353          if err != nil {
   354            handle error
   355          }
   356  
   357          go func() {
   358           for e := range txs {
   359             fmt.Println("got ", e.Data.(types.EventDataTx))
   360             }
   361          }()
   362          ```
   363  
   364          NOTE: if you're not reading events fast enough, Tendermint might
   365          terminate the subscription.
   366        parameters:
   367          - in: query
   368            name: query
   369            required: true
   370            schema:
   371              type: string
   372              example: tm.event = 'Tx' AND tx.height = 5
   373            description: |
   374              query is a string, which has a form: "condition AND condition ..." (no OR at the
   375              moment). condition has a form: "key operation operand". key is a string with
   376              a restricted set of possible symbols ( \t\n\r\\()"'=>< are not allowed).
   377              operation can be "=", "<", "<=", ">", ">=", "CONTAINS". operand can be a
   378              string (escaped with single quotes), number, date or time.
   379        responses:
   380          "200":
   381            description: empty answer
   382            content:
   383              application/json:
   384                schema:
   385                  $ref: "#/components/schemas/EmptyResponse"
   386          "500":
   387            description: empty error
   388            content:
   389              application/json:
   390                schema:
   391                  $ref: "#/components/schemas/ErrorResponse"
   392    /unsubscribe:
   393      get:
   394        summary: Unsubscribe from event on Websocket
   395        tags:
   396          - Websocket
   397        operationId: unsubscribe
   398        description: |
   399          ```go
   400          client := rpchttp.New("tcp://0.0.0.0:26657")
   401          err := client.Start()
   402          if err != nil {
   403             handle error
   404          }
   405          defer client.Stop()
   406          query := "tm.event = 'Tx' AND tx.height = 3"
   407          err = client.Unsubscribe(context.Background(), "test-client", query)
   408          if err != nil {
   409             handle error
   410          }
   411          ```
   412        parameters:
   413          - in: query
   414            name: query
   415            required: true
   416            schema:
   417              type: string
   418              example: tm.event = 'Tx' AND tx.height = 5
   419            description: |
   420              query is a string, which has a form: "condition AND condition ..." (no OR at the
   421              moment). condition has a form: "key operation operand". key is a string with
   422              a restricted set of possible symbols ( \t\n\r\\()"'=>< are not allowed).
   423              operation can be "=", "<", "<=", ">", ">=", "CONTAINS". operand can be a
   424              string (escaped with single quotes), number, date or time.
   425        responses:
   426          "200":
   427            description: Answer
   428            content:
   429              application/json:
   430                schema:
   431                  $ref: "#/components/schemas/EmptyResponse"
   432          "500":
   433            description: Error
   434            content:
   435              application/json:
   436                schema:
   437                  $ref: "#/components/schemas/ErrorResponse"
   438    /unsubscribe_all:
   439      get:
   440        summary: Unsubscribe from all events via WebSocket
   441        tags:
   442          - Websocket
   443        operationId: unsubscribe_all
   444        description: |
   445          Unsubscribe from all events via WebSocket
   446        responses:
   447          "200":
   448            description: empty answer
   449            content:
   450              application/json:
   451                schema:
   452                  $ref: "#/components/schemas/EmptyResponse"
   453          "500":
   454            description: empty error
   455            content:
   456              application/json:
   457                schema:
   458                  $ref: "#/components/schemas/ErrorResponse"
   459    /health:
   460      get:
   461        summary: Node heartbeat
   462        tags:
   463          - Info
   464        operationId: health
   465        description: |
   466          Get node health. Returns empty result (200 OK) on success, no response - in case of an error.
   467        responses:
   468          "200":
   469            description: Gets Node Health
   470            content:
   471              application/json:
   472                schema:
   473                  $ref: "#/components/schemas/EmptyResponse"
   474          "500":
   475            description: empty error
   476            content:
   477              application/json:
   478                schema:
   479                  $ref: "#/components/schemas/ErrorResponse"
   480    /status:
   481      get:
   482        summary: Node Status
   483        operationId: status
   484        tags:
   485          - Info
   486        description: |
   487          Get Tendermint status including node info, pubkey, latest block hash, app hash, block height, current max peer height, and time.
   488        responses:
   489          "200":
   490            description: Status of the node
   491            content:
   492              application/json:
   493                schema:
   494                  $ref: "#/components/schemas/StatusResponse"
   495          "500":
   496            description: empty error
   497            content:
   498              application/json:
   499                schema:
   500                  $ref: "#/components/schemas/ErrorResponse"
   501    /net_info:
   502      get:
   503        summary: Network informations
   504        operationId: net_info
   505        tags:
   506          - Info
   507        description: |
   508          Get network info.
   509        responses:
   510          "200":
   511            description: empty answer
   512            content:
   513              application/json:
   514                schema:
   515                  $ref: "#/components/schemas/NetInfoResponse"
   516          "500":
   517            description: empty error
   518            content:
   519              application/json:
   520                schema:
   521                  $ref: "#/components/schemas/ErrorResponse"
   522    /dial_seeds:
   523      get:
   524        summary: Dial Seeds (Unsafe)
   525        operationId: dial_seeds
   526        tags:
   527          - Unsafe
   528        description: |
   529          Dial a peer, this route in under unsafe, and has to manually enabled to use
   530  
   531            **Example:** curl 'localhost:26657/dial_seeds?seeds=\["f9baeaa15fedf5e1ef7448dd60f46c01f1a9e9c4@1.2.3.4:26656","0491d373a8e0fcf1023aaf18c51d6a1d0d4f31bd@5.6.7.8:26656"\]'
   532        parameters:
   533          - in: query
   534            name: peers
   535            description: list of seed nodes to dial
   536            schema:
   537              type: array
   538              items:
   539                type: string
   540                example: "f9baeaa15fedf5e1ef7448dd60f46c01f1a9e9c4@1.2.3.4:26656"
   541        responses:
   542          "200":
   543            description: Dialing seeds in progress. See /net_info for details
   544            content:
   545              application/json:
   546                schema:
   547                  $ref: "#/components/schemas/dialResp"
   548          "500":
   549            description: empty error
   550            content:
   551              application/json:
   552                schema:
   553                  $ref: "#/components/schemas/ErrorResponse"
   554    /dial_peers:
   555      get:
   556        summary: Add Peers/Persistent Peers (unsafe)
   557        operationId: dial_peers
   558        tags:
   559          - Unsafe
   560        description: |
   561          Set a persistent peer, this route in under unsafe, and has to manually enabled to use.
   562  
   563          **Example:** curl 'localhost:26657/dial_peers?peers=\["f9baeaa15fedf5e1ef7448dd60f46c01f1a9e9c4@1.2.3.4:26656","0491d373a8e0fcf1023aaf18c51d6a1d0d4f31bd@5.6.7.8:26656"\]&persistent=false'
   564        parameters:
   565          - in: query
   566            name: persistent
   567            description: Have the peers you are dialing be persistent
   568            schema:
   569              type: boolean
   570              example: true
   571          - in: query
   572            name: unconditional
   573            description: Have the peers you are dialing be unconditional
   574            schema:
   575              type: boolean
   576              example: true
   577          - in: query
   578            name: private
   579            description: Have the peers you are dialing be private
   580            schema:
   581              type: boolean
   582              example: true
   583          - in: query
   584            name: peers
   585            description: array of peers to dial
   586            schema:
   587              type: array
   588              items:
   589                type: string
   590                example: "f9baeaa15fedf5e1ef7448dd60f46c01f1a9e9c4@1.2.3.4:26656"
   591        responses:
   592          "200":
   593            description: Dialing seeds in progress. See /net_info for details
   594            content:
   595              application/json:
   596                schema:
   597                  $ref: "#/components/schemas/dialResp"
   598          "500":
   599            description: empty error
   600            content:
   601              application/json:
   602                schema:
   603                  $ref: "#/components/schemas/ErrorResponse"
   604    /blockchain:
   605      get:
   606        summary: "Get block headers (max: 20) for minHeight <= height <= maxHeight."
   607        operationId: blockchain
   608        parameters:
   609          - in: query
   610            name: minHeight
   611            description: Minimum block height to return
   612            schema:
   613              type: integer
   614              example: 1
   615          - in: query
   616            name: maxHeight
   617            description: Maximum block height to return
   618            schema:
   619              type: integer
   620              example: 2
   621        tags:
   622          - Info
   623        description: |
   624          Get block headers for minHeight <= height maxHeight.
   625  
   626          If maxHeight does not yet exist, blocks up to the current height will
   627          be returned. If minHeight does not exist (due to pruning), earliest
   628          existing height will be used.
   629  
   630          At most 20 items will be returned. Block headers are returned in
   631          descending order (highest first).
   632        responses:
   633          "200":
   634            description: Block headers, returned in descending order (highest first).
   635            content:
   636              application/json:
   637                schema:
   638                  $ref: "#/components/schemas/BlockchainResponse"
   639          "500":
   640            description: Error
   641            content:
   642              application/json:
   643                schema:
   644                  $ref: "#/components/schemas/ErrorResponse"
   645    /block:
   646      get:
   647        summary: Get block at a specified height
   648        operationId: block
   649        parameters:
   650          - in: query
   651            name: height
   652            schema:
   653              type: integer
   654              default: 0
   655              example: 1
   656            description: height to return. If no height is provided, it will fetch the latest block.
   657        tags:
   658          - Info
   659        description: |
   660          Get Block.
   661        responses:
   662          "200":
   663            description: Block informations.
   664            content:
   665              application/json:
   666                schema:
   667                  $ref: "#/components/schemas/BlockResponse"
   668          "500":
   669            description: Error
   670            content:
   671              application/json:
   672                schema:
   673                  $ref: "#/components/schemas/ErrorResponse"
   674    /block_by_hash:
   675      get:
   676        summary: Get block by hash
   677        operationId: block_by_hash
   678        parameters:
   679          - in: query
   680            name: hash
   681            description: block hash
   682            required: true
   683            schema:
   684              type: string
   685              example: "0xD70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
   686        tags:
   687          - Info
   688        description: |
   689          Get Block By Hash.
   690        responses:
   691          "200":
   692            description: Block informations.
   693            content:
   694              application/json:
   695                schema:
   696                  $ref: "#/components/schemas/BlockResponse"
   697          "500":
   698            description: Error
   699            content:
   700              application/json:
   701                schema:
   702                  $ref: "#/components/schemas/ErrorResponse"
   703    /block_results:
   704      get:
   705        summary: Get block results at a specified height
   706        operationId: block_results
   707        parameters:
   708          - in: query
   709            name: height
   710            description: height to return. If no height is provided, it will fetch informations regarding the latest block.
   711            schema:
   712              type: integer
   713              default: 0
   714              example: 1
   715        tags:
   716          - Info
   717        description: |
   718          Get block_results.
   719        responses:
   720          "200":
   721            description: Block results.
   722            content:
   723              application/json:
   724                schema:
   725                  $ref: "#/components/schemas/BlockSearchResponse"
   726          "500":
   727            description: Error
   728            content:
   729              application/json:
   730                schema:
   731                  $ref: "#/components/schemas/ErrorResponse"
   732    /commit:
   733      get:
   734        summary: Get commit results at a specified height
   735        operationId: commit
   736        parameters:
   737          - in: query
   738            name: height
   739            description: height to return. If no height is provided, it will fetch commit informations regarding the latest block.
   740            schema:
   741              type: integer
   742              default: 0
   743              example: 1
   744        tags:
   745          - Info
   746        description: |
   747          Get Commit.
   748        responses:
   749          "200":
   750            description: |
   751              Commit results.
   752  
   753              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.
   754            content:
   755              application/json:
   756                schema:
   757                  $ref: "#/components/schemas/CommitResponse"
   758          "500":
   759            description: Error
   760            content:
   761              application/json:
   762                schema:
   763                  $ref: "#/components/schemas/ErrorResponse"
   764    /validators:
   765      get:
   766        summary: Get validator set at a specified height
   767        operationId: validators
   768        parameters:
   769          - in: query
   770            name: height
   771            description: height to return. If no height is provided, it will fetch validator set which corresponds to the latest block.
   772            schema:
   773              type: integer
   774              default: 0
   775              example: 1
   776          - in: query
   777            name: page
   778            description: "Page number (1-based)"
   779            required: false
   780            schema:
   781              type: integer
   782              default: 1
   783              example: 1
   784          - in: query
   785            name: per_page
   786            description: "Number of entries per page (max: 100)"
   787            required: false
   788            schema:
   789              type: integer
   790              example: 30
   791              default: 30
   792        tags:
   793          - Info
   794        description: |
   795          Get Validators. Validators are sorted first by voting power (descending), then by address (ascending).
   796        responses:
   797          "200":
   798            description: Commit results.
   799            content:
   800              application/json:
   801                schema:
   802                  $ref: "#/components/schemas/ValidatorsResponse"
   803          "500":
   804            description: Error
   805            content:
   806              application/json:
   807                schema:
   808                  $ref: "#/components/schemas/ErrorResponse"
   809    /genesis:
   810      get:
   811        summary: Get Genesis
   812        operationId: genesis
   813        tags:
   814          - Info
   815        description: |
   816          Get genesis.
   817        responses:
   818          "200":
   819            description: Genesis results.
   820            content:
   821              application/json:
   822                schema:
   823                  $ref: "#/components/schemas/GenesisResponse"
   824          "500":
   825            description: Error
   826            content:
   827              application/json:
   828                schema:
   829                  $ref: "#/components/schemas/ErrorResponse"
   830    /dump_consensus_state:
   831      get:
   832        summary: Get consensus state
   833        operationId: dump_consensus_state
   834        tags:
   835          - Info
   836        description: |
   837          Get consensus state.
   838  
   839          Not safe to call from inside the ABCI application during a block execution.
   840        responses:
   841          "200":
   842            description: |
   843              Complete consensus state.
   844  
   845              See https://pkg.go.dev/github.com/number571/tendermint/types?tab=doc#Vote.String for Vote string description.
   846            content:
   847              application/json:
   848                schema:
   849                  $ref: "#/components/schemas/DumpConsensusResponse"
   850          "500":
   851            description: Error
   852            content:
   853              application/json:
   854                schema:
   855                  $ref: "#/components/schemas/ErrorResponse"
   856    /consensus_state:
   857      get:
   858        summary: Get consensus state
   859        operationId: consensus_state
   860        tags:
   861          - Info
   862        description: |
   863          Get consensus state.
   864  
   865          Not safe to call from inside the ABCI application during a block execution.
   866        responses:
   867          "200":
   868            description: consensus state results.
   869            content:
   870              application/json:
   871                schema:
   872                  $ref: "#/components/schemas/ConsensusStateResponse"
   873          "500":
   874            description: Error
   875            content:
   876              application/json:
   877                schema:
   878                  $ref: "#/components/schemas/ErrorResponse"
   879    /consensus_params:
   880      get:
   881        summary: Get consensus parameters
   882        operationId: consensus_params
   883        parameters:
   884          - in: query
   885            name: height
   886            description: height to return. If no height is provided, it will fetch commit informations regarding the latest block.
   887            schema:
   888              type: integer
   889              default: 0
   890              example: 1
   891        tags:
   892          - Info
   893        description: |
   894          Get consensus parameters.
   895        responses:
   896          "200":
   897            description: consensus parameters results.
   898            content:
   899              application/json:
   900                schema:
   901                  $ref: "#/components/schemas/ConsensusParamsResponse"
   902          "500":
   903            description: Error
   904            content:
   905              application/json:
   906                schema:
   907                  $ref: "#/components/schemas/ErrorResponse"
   908    /unconfirmed_txs:
   909      get:
   910        summary: Get the list of unconfirmed transactions
   911        operationId: unconfirmed_txs
   912        parameters:
   913          - in: query
   914            name: limit
   915            description: Maximum number of unconfirmed transactions to return (max 100)
   916            required: false
   917            schema:
   918              type: integer
   919              default: 30
   920              example: 1
   921        tags:
   922          - Info
   923        description: |
   924          Get list of unconfirmed transactions
   925        responses:
   926          "200":
   927            description: List of unconfirmed transactions
   928            content:
   929              application/json:
   930                schema:
   931                  $ref: "#/components/schemas/UnconfirmedTransactionsResponse"
   932          "500":
   933            description: Error
   934            content:
   935              application/json:
   936                schema:
   937                  $ref: "#/components/schemas/ErrorResponse"
   938    /num_unconfirmed_txs:
   939      get:
   940        summary: Get data about unconfirmed transactions
   941        operationId: num_unconfirmed_txs
   942        tags:
   943          - Info
   944        description: |
   945          Get data about unconfirmed transactions
   946        responses:
   947          "200":
   948            description: status about unconfirmed transactions
   949            content:
   950              application/json:
   951                schema:
   952                  $ref: "#/components/schemas/NumUnconfirmedTransactionsResponse"
   953          "500":
   954            description: Error
   955            content:
   956              application/json:
   957                schema:
   958                  $ref: "#/components/schemas/ErrorResponse"
   959    /tx_search:
   960      get:
   961        summary: Search for transactions
   962        description: |
   963          Search for transactions w/ their results.
   964  
   965          See /subscribe for the query syntax.
   966        operationId: tx_search
   967        parameters:
   968          - in: query
   969            name: query
   970            description: Query
   971            required: true
   972            schema:
   973              type: string
   974              example: "tx.height=1000"
   975          - in: query
   976            name: prove
   977            description: Include proofs of the transactions inclusion in the block
   978            required: false
   979            schema:
   980              type: boolean
   981              default: false
   982              example: true
   983          - in: query
   984            name: page
   985            description: "Page number (1-based)"
   986            required: false
   987            schema:
   988              type: integer
   989              default: 1
   990              example: 1
   991          - in: query
   992            name: per_page
   993            description: "Number of entries per page (max: 100)"
   994            required: false
   995            schema:
   996              type: integer
   997              default: 30
   998              example: 30
   999          - in: query
  1000            name: order_by
  1001            description: Order in which transactions are sorted ("asc" or "desc"), by height & index. If empty, default sorting will be still applied.
  1002            required: false
  1003            schema:
  1004              type: string
  1005              default: "desc"
  1006              example: "asc"
  1007        tags:
  1008          - Info
  1009        responses:
  1010          "200":
  1011            description: List of unconfirmed transactions
  1012            content:
  1013              application/json:
  1014                schema:
  1015                  $ref: "#/components/schemas/TxSearchResponse"
  1016          "500":
  1017            description: Error
  1018            content:
  1019              application/json:
  1020                schema:
  1021                  $ref: "#/components/schemas/ErrorResponse"
  1022    /block_search:
  1023      get:
  1024        summary: Search for blocks by BeginBlock and EndBlock events
  1025        description: |
  1026          Search for blocks by BeginBlock and EndBlock events.
  1027  
  1028          See /subscribe for the query syntax.
  1029        operationId: block_search
  1030        parameters:
  1031          - in: query
  1032            name: query
  1033            description: Query
  1034            required: true
  1035            schema:
  1036              type: string
  1037              example: "block.height > 1000 AND valset.changed > 0"
  1038          - in: query
  1039            name: page
  1040            description: "Page number (1-based)"
  1041            required: false
  1042            schema:
  1043              type: integer
  1044              default: 1
  1045              example: 1
  1046          - in: query
  1047            name: per_page
  1048            description: "Number of entries per page (max: 100)"
  1049            required: false
  1050            schema:
  1051              type: integer
  1052              default: 30
  1053              example: 30
  1054          - in: query
  1055            name: order_by
  1056            description: Order in which blocks are sorted ("asc" or "desc"), by height. If empty, default sorting will be still applied.
  1057            required: false
  1058            schema:
  1059              type: string
  1060              default: "desc"
  1061              example: "asc"
  1062        tags:
  1063          - Info
  1064        responses:
  1065          "200":
  1066            description: List of paginated blocks matching the search criteria.
  1067            content:
  1068              application/json:
  1069                schema:
  1070                  $ref: "#/components/schemas/BlockResultsResponse"
  1071          "500":
  1072            description: Error
  1073            content:
  1074              application/json:
  1075                schema:
  1076                  $ref: "#/components/schemas/ErrorResponse"
  1077  
  1078    /tx:
  1079      get:
  1080        summary: Get transactions by hash
  1081        operationId: tx
  1082        parameters:
  1083          - in: query
  1084            name: hash
  1085            description: transaction Hash to retrive
  1086            required: true
  1087            schema:
  1088              type: string
  1089              example: "0xD70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
  1090          - in: query
  1091            name: prove
  1092            description: Include proofs of the transactions inclusion in the block
  1093            required: false
  1094            schema:
  1095              type: boolean
  1096              example: true
  1097              default: false
  1098        tags:
  1099          - Info
  1100        description: |
  1101          Get a trasasction
  1102        responses:
  1103          "200":
  1104            description: Get a transaction`
  1105            content:
  1106              application/json:
  1107                schema:
  1108                  $ref: "#/components/schemas/TxResponse"
  1109          "500":
  1110            description: Error
  1111            content:
  1112              application/json:
  1113                schema:
  1114                  $ref: "#/components/schemas/ErrorResponse"
  1115    /abci_info:
  1116      get:
  1117        summary: Get some info about the application.
  1118        operationId: abci_info
  1119        tags:
  1120          - ABCI
  1121        description: |
  1122          Get some info about the application.
  1123        responses:
  1124          "200":
  1125            description: Get some info about the application.
  1126            content:
  1127              application/json:
  1128                schema:
  1129                  $ref: "#/components/schemas/ABCIInfoResponse"
  1130          "500":
  1131            description: Error
  1132            content:
  1133              application/json:
  1134                schema:
  1135                  $ref: "#/components/schemas/ErrorResponse"
  1136    /abci_query:
  1137      get:
  1138        summary: Query the application for some information.
  1139        operationId: abci_query
  1140        parameters:
  1141          - in: query
  1142            name: path
  1143            description: Path to the data ("/a/b/c")
  1144            required: true
  1145            schema:
  1146              type: string
  1147              example: "/a/b/c"
  1148          - in: query
  1149            name: data
  1150            description: Data
  1151            required: true
  1152            schema:
  1153              type: string
  1154              example: "IHAVENOIDEA"
  1155          - in: query
  1156            name: height
  1157            description: Height (0 means latest)
  1158            required: false
  1159            schema:
  1160              type: integer
  1161              example: 1
  1162              default: 0
  1163          - in: query
  1164            name: prove
  1165            description: Include proofs of the transactions inclusion in the block
  1166            required: false
  1167            schema:
  1168              type: boolean
  1169              example: true
  1170              default: false
  1171        tags:
  1172          - ABCI
  1173        description: |
  1174          Query the application for some information.
  1175        responses:
  1176          "200":
  1177            description: Response of the submitted query
  1178            content:
  1179              application/json:
  1180                schema:
  1181                  $ref: "#/components/schemas/ABCIQueryResponse"
  1182          "500":
  1183            description: Error
  1184            content:
  1185              application/json:
  1186                schema:
  1187                  $ref: "#/components/schemas/ErrorResponse"
  1188    /broadcast_evidence:
  1189      get:
  1190        summary: Broadcast evidence of the misbehavior.
  1191        operationId: broadcast_evidence
  1192        parameters:
  1193          - in: query
  1194            name: evidence
  1195            description: JSON evidence
  1196            required: true
  1197            schema:
  1198              type: string
  1199              example: "JSON_EVIDENCE_encoded"
  1200        tags:
  1201          - Evidence
  1202        description: |
  1203          Broadcast evidence of the misbehavior.
  1204        responses:
  1205          "200":
  1206            description: Broadcast evidence of the misbehavior.
  1207            content:
  1208              application/json:
  1209                schema:
  1210                  $ref: "#/components/schemas/BroadcastEvidenceResponse"
  1211          "500":
  1212            description: Error
  1213            content:
  1214              application/json:
  1215                schema:
  1216                  $ref: "#/components/schemas/ErrorResponse"
  1217  
  1218  components:
  1219    schemas:
  1220      JSONRPC:
  1221        type: object
  1222        properties:
  1223          id:
  1224            type: integer
  1225            example: 0
  1226          jsonrpc:
  1227            type: string
  1228            example: "2.0"
  1229      EmptyResponse:
  1230        description: Empty Response
  1231        allOf:
  1232          - $ref: "#/components/schemas/JSONRPC"
  1233          - type: object
  1234            properties:
  1235              result:
  1236                type: object
  1237                additionalProperties: {}
  1238      ErrorResponse:
  1239        description: Error Response
  1240        allOf:
  1241          - $ref: "#/components/schemas/JSONRPC"
  1242          - type: object
  1243            properties:
  1244              error:
  1245                type: string
  1246                example: "Description of failure"
  1247      ProtocolVersion:
  1248        type: object
  1249        properties:
  1250          p2p:
  1251            type: string
  1252            example: "7"
  1253          block:
  1254            type: string
  1255            example: "10"
  1256          app:
  1257            type: string
  1258            example: "0"
  1259      PubKey:
  1260        type: object
  1261        properties:
  1262          type:
  1263            type: string
  1264            example: "tendermint/PubKeyEd25519"
  1265          value:
  1266            type: string
  1267            example: "A6DoBUypNtUAyEHWtQ9bFjfNg8Bo9CrnkUGl6k6OHN4="
  1268      NodeInfo:
  1269        type: object
  1270        properties:
  1271          protocol_version:
  1272            $ref: "#/components/schemas/ProtocolVersion"
  1273          id:
  1274            type: string
  1275            example: "5576458aef205977e18fd50b274e9b5d9014525a"
  1276          listen_addr:
  1277            type: string
  1278            example: "tcp://0.0.0.0:26656"
  1279          network:
  1280            type: string
  1281            example: "cosmoshub-2"
  1282          version:
  1283            type: string
  1284            example: "0.32.1"
  1285          channels:
  1286            type: string
  1287            example: "4020212223303800"
  1288          moniker:
  1289            type: string
  1290            example: "moniker-node"
  1291          other:
  1292            type: object
  1293            properties:
  1294              tx_index:
  1295                type: string
  1296                example: "on"
  1297              rpc_address:
  1298                type: string
  1299                example: "tcp://0.0.0.0:26657"
  1300      SyncInfo:
  1301        type: object
  1302        properties:
  1303          latest_block_hash:
  1304            type: string
  1305            example: "790BA84C3545FCCC49A5C629CEE6EA58A6E875C3862175BDC11EE7AF54703501"
  1306          latest_app_hash:
  1307            type: string
  1308            example: "C9AEBB441B787D9F1D846DE51F3826F4FD386108B59B08239653ABF59455C3F8"
  1309          latest_block_height:
  1310            type: string
  1311            example: "1262196"
  1312          latest_block_time:
  1313            type: string
  1314            example: "2019-08-01T11:52:22.818762194Z"
  1315          earliest_block_hash:
  1316            type: string
  1317            example: "790BA84C3545FCCC49A5C629CEE6EA58A6E875C3862175BDC11EE7AF54703501"
  1318          earliest_app_hash:
  1319            type: string
  1320            example: "C9AEBB441B787D9F1D846DE51F3826F4FD386108B59B08239653ABF59455C3F8"
  1321          earliest_block_height:
  1322            type: string
  1323            example: "1262196"
  1324          earliest_block_time:
  1325            type: string
  1326            example: "2019-08-01T11:52:22.818762194Z"
  1327          max_peer_block_height:
  1328            type: string
  1329            example: "1262196"
  1330          catching_up:
  1331            type: boolean
  1332            example: false
  1333          total_synced_time:
  1334            type: string
  1335            example: "1000000000"
  1336          remaining_time:
  1337            type: string
  1338            example: "0"
  1339      ValidatorInfo:
  1340        type: object
  1341        properties:
  1342          address:
  1343            type: string
  1344            example: "5D6A51A8E9899C44079C6AF90618BA0369070E6E"
  1345          pub_key:
  1346            $ref: "#/components/schemas/PubKey"
  1347          voting_power:
  1348            type: string
  1349            example: "0"
  1350      Status:
  1351        description: Status Response
  1352        type: object
  1353        properties:
  1354          node_info:
  1355            $ref: "#/components/schemas/NodeInfo"
  1356          sync_info:
  1357            $ref: "#/components/schemas/SyncInfo"
  1358          validator_info:
  1359            $ref: "#/components/schemas/ValidatorInfo"
  1360      StatusResponse:
  1361        description: Status Response
  1362        allOf:
  1363          - $ref: "#/components/schemas/JSONRPC"
  1364          - type: object
  1365            properties:
  1366              result:
  1367                $ref: "#/components/schemas/Status"
  1368      Monitor:
  1369        type: object
  1370        properties:
  1371          Active:
  1372            type: boolean
  1373            example: true
  1374          Start:
  1375            type: string
  1376            example: "2019-07-31T14:31:28.66Z"
  1377          Duration:
  1378            type: string
  1379            example: "168901060000000"
  1380          Idle:
  1381            type: string
  1382            example: "168901040000000"
  1383          Bytes:
  1384            type: string
  1385            example: "5"
  1386          Samples:
  1387            type: string
  1388            example: "1"
  1389          InstRate:
  1390            type: string
  1391            example: "0"
  1392          CurRate:
  1393            type: string
  1394            example: "0"
  1395          AvgRate:
  1396            type: string
  1397            example: "0"
  1398          PeakRate:
  1399            type: string
  1400            example: "0"
  1401          BytesRem:
  1402            type: string
  1403            example: "0"
  1404          TimeRem:
  1405            type: string
  1406            example: "0"
  1407          Progress:
  1408            type: integer
  1409            example: 0
  1410      Channel:
  1411        type: object
  1412        properties:
  1413          ID:
  1414            type: integer
  1415            example: 48
  1416          SendQueueCapacity:
  1417            type: string
  1418            example: "1"
  1419          SendQueueSize:
  1420            type: string
  1421            example: "0"
  1422          Priority:
  1423            type: string
  1424            example: "5"
  1425          RecentlySent:
  1426            type: string
  1427            example: "0"
  1428      ConnectionStatus:
  1429        type: object
  1430        properties:
  1431          Duration:
  1432            type: string
  1433            example: "168901057956119"
  1434          SendMonitor:
  1435            $ref: "#/components/schemas/Monitor"
  1436          RecvMonitor:
  1437            $ref: "#/components/schemas/Monitor"
  1438          Channels:
  1439            type: array
  1440            items:
  1441              $ref: "#/components/schemas/Channel"
  1442      Peer:
  1443        type: object
  1444        properties:
  1445          node_info:
  1446            $ref: "#/components/schemas/NodeInfo"
  1447          is_outbound:
  1448            type: boolean
  1449            example: true
  1450          connection_status:
  1451            $ref: "#/components/schemas/ConnectionStatus"
  1452          remote_ip:
  1453            type: string
  1454            example: "95.179.155.35"
  1455      NetInfo:
  1456        type: object
  1457        properties:
  1458          listening:
  1459            type: boolean
  1460            example: true
  1461          listeners:
  1462            type: array
  1463            items:
  1464              type: string
  1465              example: "Listener(@)"
  1466          n_peers:
  1467            type: string
  1468            example: "1"
  1469          peers:
  1470            type: array
  1471            items:
  1472              $ref: "#/components/schemas/Peer"
  1473      NetInfoResponse:
  1474        description: NetInfo Response
  1475        allOf:
  1476          - $ref: "#/components/schemas/JSONRPC"
  1477          - type: object
  1478            properties:
  1479              result:
  1480                $ref: "#/components/schemas/NetInfo"
  1481  
  1482      BlockMeta:
  1483        type: object
  1484        properties:
  1485          block_id:
  1486            $ref: "#/components/schemas/BlockID"
  1487          block_size:
  1488            type: integer
  1489            example: 1000000
  1490          header:
  1491            $ref: "#/components/schemas/BlockHeader"
  1492          num_txs:
  1493            type: string
  1494            example: "54"
  1495  
  1496      Blockchain:
  1497        type: object
  1498        required:
  1499          - "last_height"
  1500          - "block_metas"
  1501        properties:
  1502          last_height:
  1503            type: string
  1504            example: "1276718"
  1505          block_metas:
  1506            type: array
  1507            items:
  1508              $ref: "#/components/schemas/BlockMeta"
  1509  
  1510      BlockchainResponse:
  1511        description: Blockchain info
  1512        allOf:
  1513          - $ref: "#/components/schemas/JSONRPC"
  1514          - type: object
  1515            properties:
  1516              result:
  1517                $ref: "#/components/schemas/Blockchain"
  1518  
  1519      Commit:
  1520        required:
  1521          - "type"
  1522          - "height"
  1523          - "round"
  1524          - "block_id"
  1525          - "timestamp"
  1526          - "validator_address"
  1527          - "validator_index"
  1528          - "signature"
  1529        properties:
  1530          type:
  1531            type: integer
  1532            example: 2
  1533          height:
  1534            type: string
  1535            example: "1262085"
  1536          round:
  1537            type: integer
  1538            example: 0
  1539          block_id:
  1540            $ref: "#/components/schemas/BlockID"
  1541          timestamp:
  1542            type: string
  1543            example: "2019-08-01T11:39:38.867269833Z"
  1544          validator_address:
  1545            type: string
  1546            example: "000001E443FD237E4B616E2FA69DF4EE3D49A94F"
  1547          validator_index:
  1548            type: integer
  1549            example: 0
  1550          signature:
  1551            type: string
  1552            example: "DBchvucTzAUEJnGYpNvMdqLhBAHG4Px8BsOBB3J3mAFCLGeuG7uJqy+nVngKzZdPhPi8RhmE/xcw/M9DOJjEDg=="
  1553  
  1554      Block:
  1555        type: object
  1556        properties:
  1557          header:
  1558            $ref: "#/components/schemas/BlockHeader"
  1559          data:
  1560            type: array
  1561            items:
  1562              type: string
  1563              example: "yQHwYl3uCkKoo2GaChRnd+THLQ2RM87nEZrE19910Z28ABIUWW/t8AtIMwcyU0sT32RcMDI9GF0aEAoFdWF0b20SBzEwMDAwMDASEwoNCgV1YXRvbRIEMzEwMRCd8gEaagom61rphyEDoJPxlcjRoNDtZ9xMdvs+lRzFaHe2dl2P5R2yVCWrsHISQKkqX5H1zXAIJuC57yw0Yb03Fwy75VRip0ZBtLiYsUqkOsPUoQZAhDNP+6LY+RUwz/nVzedkF0S29NZ32QXdGv0="
  1564          evidence:
  1565            type: array
  1566            items:
  1567              $ref: "#/components/schemas/Evidence"
  1568          last_commit:
  1569            type: object
  1570            properties:
  1571              height:
  1572                type: integer
  1573              round:
  1574                type: integer
  1575              block_id:
  1576                $ref: "#/components/schemas/BlockID"
  1577              signatures:
  1578                type: array
  1579                items:
  1580                  $ref: "#/components/schemas/Commit"
  1581  
  1582      Evidence:
  1583        type: object
  1584        properties:
  1585          type:
  1586            type: string
  1587          height:
  1588            type: integer
  1589          time:
  1590            type: integer
  1591          total_voting_power:
  1592            type: integer
  1593          validator:
  1594            $ref: "#/components/schemas/Validator"
  1595  
  1596      BlockComplete:
  1597        type: object
  1598        properties:
  1599          block_id:
  1600            $ref: "#/components/schemas/BlockID"
  1601          block:
  1602            $ref: "#/components/schemas/Block"
  1603      BlockResponse:
  1604        description: Blockc info
  1605        allOf:
  1606          - $ref: "#/components/schemas/JSONRPC"
  1607          - type: object
  1608            properties:
  1609              result:
  1610                $ref: "#/components/schemas/BlockComplete"
  1611  
  1612      ################## FROM NOW ON NEEDS REFACTOR ##################
  1613      BlockResultsResponse:
  1614        type: object
  1615        required:
  1616          - "jsonrpc"
  1617          - "id"
  1618          - "result"
  1619        properties:
  1620          jsonrpc:
  1621            type: string
  1622            example: "2.0"
  1623          id:
  1624            type: integer
  1625            example: 0
  1626          result:
  1627            type: object
  1628            required:
  1629              - "height"
  1630            properties:
  1631              height:
  1632                type: string
  1633                example: "12"
  1634              txs_results:
  1635                type: array
  1636                nullable: true
  1637                items:
  1638                  type: object
  1639                  properties:
  1640                    code:
  1641                      type: string
  1642                      example: "0"
  1643                    data:
  1644                      type: string
  1645                      example: ""
  1646                    log:
  1647                      type: string
  1648                      example: "not enough gas"
  1649                    info:
  1650                      type: string
  1651                      example: ""
  1652                    gas_wanted:
  1653                      type: string
  1654                      example: "100"
  1655                    gas_used:
  1656                      type: string
  1657                      example: "100"
  1658                    events:
  1659                      type: array
  1660                      nullable: true
  1661                      items:
  1662                        type: object
  1663                        properties:
  1664                          type:
  1665                            type: string
  1666                            example: "app"
  1667                          attributes:
  1668                            type: array
  1669                            nullable: false
  1670                            items:
  1671                              $ref: "#/components/schemas/Event"
  1672                    codespace:
  1673                      type: string
  1674                      example: "ibc"
  1675              total_gas_used:
  1676                type: string
  1677                example: "100"
  1678              begin_block_events:
  1679                type: array
  1680                nullable: true
  1681                items:
  1682                  type: object
  1683                  properties:
  1684                    type:
  1685                      type: string
  1686                      example: "app"
  1687                    attributes:
  1688                      type: array
  1689                      nullable: false
  1690                      items:
  1691                        $ref: "#/components/schemas/Event"
  1692              end_block:
  1693                type: array
  1694                nullable: true
  1695                items:
  1696                  type: object
  1697                  properties:
  1698                    type:
  1699                      type: string
  1700                      example: "app"
  1701                    attributes:
  1702                      type: array
  1703                      nullable: false
  1704                      items:
  1705                        $ref: "#/components/schemas/Event"
  1706              validator_updates:
  1707                type: array
  1708                nullable: true
  1709                items:
  1710                  type: object
  1711                  properties:
  1712                    pub_key:
  1713                      type: object
  1714                      required:
  1715                        - "type"
  1716                        - "value"
  1717                      properties:
  1718                        type:
  1719                          type: string
  1720                          example: "tendermint/PubKeyEd25519"
  1721                        value:
  1722                          type: string
  1723                          example: "9tK9IT+FPdf2qm+5c2qaxi10sWP+3erWTKgftn2PaQM="
  1724                    power:
  1725                      type: string
  1726                      example: "300"
  1727              consensus_params_updates:
  1728                $ref: "#/components/schemas/ConsensusParams"
  1729  
  1730      CommitResponse:
  1731        type: object
  1732        required:
  1733          - "jsonrpc"
  1734          - "id"
  1735          - "result"
  1736        properties:
  1737          jsonrpc:
  1738            type: string
  1739            example: "2.0"
  1740          id:
  1741            type: integer
  1742            example: 0
  1743          result:
  1744            required:
  1745              - "signed_header"
  1746              - "canonical"
  1747            properties:
  1748              signed_header:
  1749                required:
  1750                  - "header"
  1751                  - "commit"
  1752                properties:
  1753                  header:
  1754                    $ref: "#/components/schemas/BlockHeader"
  1755                  commit:
  1756                    required:
  1757                      - "height"
  1758                      - "round"
  1759                      - "block_id"
  1760                      - "signatures"
  1761                    properties:
  1762                      height:
  1763                        type: string
  1764                        example: "1311801"
  1765                      round:
  1766                        type: integer
  1767                        example: 0
  1768                      block_id:
  1769                        $ref: "#/components/schemas/BlockID"
  1770                      signatures:
  1771                        type: array
  1772                        items:
  1773                          type: object
  1774                          properties:
  1775                            block_id_flag:
  1776                              type: integer
  1777                              example: 2
  1778                            validator_address:
  1779                              type: string
  1780                              example: "000001E443FD237E4B616E2FA69DF4EE3D49A94F"
  1781                            timestamp:
  1782                              type: string
  1783                              example: "2019-04-22T17:01:58.376629719Z"
  1784                            signature:
  1785                              type: string
  1786                              example: "14jaTQXYRt8kbLKEhdHq7AXycrFImiLuZx50uOjs2+Zv+2i7RTG/jnObD07Jo2ubZ8xd7bNBJMqkgtkd0oQHAw=="
  1787                    type: object
  1788                type: object
  1789              canonical:
  1790                type: boolean
  1791                example: true
  1792            type: object
  1793      ValidatorsResponse:
  1794        type: object
  1795        required:
  1796          - "jsonrpc"
  1797          - "id"
  1798          - "result"
  1799        properties:
  1800          jsonrpc:
  1801            type: string
  1802            example: "2.0"
  1803          id:
  1804            type: integer
  1805            example: 0
  1806          result:
  1807            required:
  1808              - "block_height"
  1809              - "validators"
  1810            properties:
  1811              block_height:
  1812                type: string
  1813                example: "55"
  1814              validators:
  1815                type: array
  1816                items:
  1817                  $ref: "#/components/schemas/ValidatorPriority"
  1818              count:
  1819                type: string
  1820                example: "1"
  1821              total:
  1822                type: string
  1823                example: "25"
  1824            type: object
  1825      GenesisResponse:
  1826        type: object
  1827        required:
  1828          - "jsonrpc"
  1829          - "id"
  1830          - "result"
  1831        properties:
  1832          jsonrpc:
  1833            type: string
  1834            example: "2.0"
  1835          id:
  1836            type: integer
  1837            example: 0
  1838          result:
  1839            type: object
  1840            required:
  1841              - "genesis"
  1842            properties:
  1843              genesis:
  1844                type: object
  1845                required:
  1846                  - "genesis_time"
  1847                  - "chain_id"
  1848                  - "initial_height"
  1849                  - "consensus_params"
  1850                  - "validators"
  1851                  - "app_hash"
  1852                properties:
  1853                  genesis_time:
  1854                    type: string
  1855                    example: "2019-04-22T17:00:00Z"
  1856                  chain_id:
  1857                    type: string
  1858                    example: "cosmoshub-2"
  1859                  initial_height:
  1860                    type: string
  1861                    example: "2"
  1862                  consensus_params:
  1863                    $ref: "#/components/schemas/ConsensusParams"
  1864                  validators:
  1865                    type: array
  1866                    items:
  1867                      type: object
  1868                      properties:
  1869                        address:
  1870                          type: string
  1871                          example: "B00A6323737F321EB0B8D59C6FD497A14B60938A"
  1872                        pub_key:
  1873                          required:
  1874                            - "type"
  1875                            - "value"
  1876                          properties:
  1877                            type:
  1878                              type: string
  1879                              example: "tendermint/PubKeyEd25519"
  1880                            value:
  1881                              type: string
  1882                              example: "cOQZvh/h9ZioSeUMZB/1Vy1Xo5x2sjrVjlE/qHnYifM="
  1883                          type: object
  1884                        power:
  1885                          type: string
  1886                          example: "9328525"
  1887                        name:
  1888                          type: string
  1889                          example: "Certus One"
  1890                  app_hash:
  1891                    type: string
  1892                    example: ""
  1893                  app_state:
  1894                    properties: {}
  1895                    type: object
  1896  
  1897      DumpConsensusResponse:
  1898        type: object
  1899        required:
  1900          - "jsonrpc"
  1901          - "id"
  1902          - "result"
  1903        properties:
  1904          jsonrpc:
  1905            type: string
  1906            example: "2.0"
  1907          id:
  1908            type: integer
  1909            example: 0
  1910          result:
  1911            required:
  1912              - "round_state"
  1913              - "peers"
  1914            properties:
  1915              round_state:
  1916                required:
  1917                  - "height"
  1918                  - "round"
  1919                  - "step"
  1920                  - "start_time"
  1921                  - "commit_time"
  1922                  - "validators"
  1923                  - "proposal"
  1924                  - "proposal_block"
  1925                  - "proposal_block_parts"
  1926                  - "locked_round"
  1927                  - "locked_block"
  1928                  - "locked_block_parts"
  1929                  - "valid_round"
  1930                  - "valid_block"
  1931                  - "valid_block_parts"
  1932                  - "votes"
  1933                  - "commit_round"
  1934                  - "last_commit"
  1935                  - "last_validators"
  1936                  - "triggered_timeout_precommit"
  1937                properties:
  1938                  height:
  1939                    type: string
  1940                    example: "1311801"
  1941                  round:
  1942                    type: integer
  1943                    example: 0
  1944                  step:
  1945                    type: integer
  1946                    example: 3
  1947                  start_time:
  1948                    type: string
  1949                    example: "2019-08-05T11:28:49.064658805Z"
  1950                  commit_time:
  1951                    type: string
  1952                    example: "2019-08-05T11:28:44.064658805Z"
  1953                  validators:
  1954                    required:
  1955                      - "validators"
  1956                      - "proposer"
  1957                    properties:
  1958                      validators:
  1959                        type: array
  1960                        items:
  1961                          $ref: "#/components/schemas/ValidatorPriority"
  1962                      proposer:
  1963                        $ref: "#/components/schemas/ValidatorPriority"
  1964                    type: object
  1965                  locked_round:
  1966                    type: integer
  1967                    example: -1
  1968                  valid_round:
  1969                    type: string
  1970                    example: "-1"
  1971                  votes:
  1972                    type: array
  1973                    items:
  1974                      type: object
  1975                      properties:
  1976                        round:
  1977                          type: string
  1978                          example: "0"
  1979                        prevotes:
  1980                          type: array
  1981                          nullable: true
  1982                          items:
  1983                            type: string
  1984                          example:
  1985                            - "nil-Vote"
  1986                            - "Vote{19:46A3F8B8393B 1311801/00/1(Prevote) 000000000000 64CE682305CB @ 2019-08-05T11:28:47.374703444Z}"
  1987                        prevotes_bit_array:
  1988                          type: string
  1989                          example: "BA{100:___________________x________________________________________________________________________________} 209706/170220253 = 0.00"
  1990                        precommits:
  1991                          type: array
  1992                          nullable: true
  1993                          items:
  1994                            type: string
  1995                          example:
  1996                            - "nil-Vote"
  1997                        precommits_bit_array:
  1998                          type: string
  1999                          example: "BA{100:____________________________________________________________________________________________________} 0/170220253 = 0.00"
  2000                  commit_round:
  2001                    type: integer
  2002                    example: -1
  2003                  last_commit:
  2004                    nullable: true
  2005                    required:
  2006                      - "votes"
  2007                      - "votes_bit_array"
  2008                      - "peer_maj_23s"
  2009                    properties:
  2010                      votes:
  2011                        type: array
  2012                        items:
  2013                          type: string
  2014                        example:
  2015                          - "Vote{0:000001E443FD 1311800/00/2(Precommit) 3071ADB27D1A 77EE1B6B6847 @ 2019-08-05T11:28:43.810128139Z}"
  2016                      votes_bit_array:
  2017                        type: string
  2018                        example: "BA{100:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx} 170220253/170220253 = 1.00"
  2019                      peer_maj_23s:
  2020                        properties: {}
  2021                        type: object
  2022                    type: object
  2023                  last_validators:
  2024                    required:
  2025                      - "validators"
  2026                      - "proposer"
  2027                    properties:
  2028                      validators:
  2029                        type: array
  2030                        items:
  2031                          $ref: "#/components/schemas/ValidatorPriority"
  2032                      proposer:
  2033                        $ref: "#/components/schemas/ValidatorPriority"
  2034                    type: object
  2035                  triggered_timeout_precommit:
  2036                    type: boolean
  2037                    example: false
  2038                type: object
  2039              peers:
  2040                type: array
  2041                items:
  2042                  type: object
  2043                  properties:
  2044                    node_address:
  2045                      type: string
  2046                      example: "357f6a6c1d27414579a8185060aa8adf9815c43c@68.183.41.207:26656"
  2047                    peer_state:
  2048                      required:
  2049                        - "round_state"
  2050                        - "stats"
  2051                      properties:
  2052                        round_state:
  2053                          required:
  2054                            - "height"
  2055                            - "round"
  2056                            - "step"
  2057                            - "start_time"
  2058                            - "proposal"
  2059                            - "proposal_block_parts_header"
  2060                            - "proposal_block_parts"
  2061                            - "proposal_pol_round"
  2062                            - "proposal_pol"
  2063                            - "prevotes"
  2064                            - "precommits"
  2065                            - "last_commit_round"
  2066                            - "last_commit"
  2067                            - "catchup_commit_round"
  2068                            - "catchup_commit"
  2069                          properties:
  2070                            height:
  2071                              type: string
  2072                              example: "1311801"
  2073                            round:
  2074                              type: string
  2075                              example: "0"
  2076                            step:
  2077                              type: integer
  2078                              example: 3
  2079                            start_time:
  2080                              type: string
  2081                              example: "2019-08-05T11:28:49.21730864Z"
  2082                            proposal:
  2083                              type: boolean
  2084                              example: false
  2085                            proposal_block_parts_header:
  2086                              required:
  2087                                - "total"
  2088                                - "hash"
  2089                              properties:
  2090                                total:
  2091                                  type: integer
  2092                                  example: 0
  2093                                hash:
  2094                                  type: string
  2095                                  example: ""
  2096                              type: object
  2097                            proposal_pol_round:
  2098                              nullable: true
  2099                              type: integer
  2100                              example: -1
  2101                            proposal_pol:
  2102                              nullable: true
  2103                              type: string
  2104                              example: "____________________________________________________________________________________________________"
  2105                            prevotes:
  2106                              nullable: true
  2107                              type: string
  2108                              example: "___________________x________________________________________________________________________________"
  2109                            precommits:
  2110                              nullable: true
  2111                              type: string
  2112                              example: "____________________________________________________________________________________________________"
  2113                            last_commit_round:
  2114                              nullable: true
  2115                              type: integer
  2116                              example: 0
  2117                            last_commit:
  2118                              nullable: true
  2119                              type: string
  2120                              example: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  2121                            catchup_commit_round:
  2122                              type: integer
  2123                              nullable: true
  2124                              example: -1
  2125                            catchup_commit:
  2126                              nullable: true
  2127                              type: string
  2128                              example: "____________________________________________________________________________________________________"
  2129                          type: object
  2130                        stats:
  2131                          required:
  2132                            - "votes"
  2133                            - "block_parts"
  2134                          properties:
  2135                            votes:
  2136                              type: string
  2137                              example: "1159558"
  2138                            block_parts:
  2139                              type: string
  2140                              example: "4786"
  2141                          type: object
  2142                      type: object
  2143            type: object
  2144  
  2145      ConsensusStateResponse:
  2146        type: object
  2147        required:
  2148          - "jsonrpc"
  2149          - "id"
  2150          - "result"
  2151        properties:
  2152          jsonrpc:
  2153            type: string
  2154            example: "2.0"
  2155          id:
  2156            type: integer
  2157            example: 0
  2158          result:
  2159            required:
  2160              - "round_state"
  2161            properties:
  2162              round_state:
  2163                required:
  2164                  - "height/round/step"
  2165                  - "start_time"
  2166                  - "proposal_block_hash"
  2167                  - "locked_block_hash"
  2168                  - "valid_block_hash"
  2169                  - "height_vote_set"
  2170                  - "proposer"
  2171                properties:
  2172                  height/round/step:
  2173                    type: string
  2174                    example: "1262197/0/8"
  2175                  start_time:
  2176                    type: string
  2177                    example: "2019-08-01T11:52:38.962730289Z"
  2178                  proposal_block_hash:
  2179                    type: string
  2180                    example: "634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009"
  2181                  locked_block_hash:
  2182                    type: string
  2183                    example: "634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009"
  2184                  valid_block_hash:
  2185                    type: string
  2186                    example: "634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009"
  2187                  height_vote_set:
  2188                    type: array
  2189                    items:
  2190                      type: object
  2191                      properties:
  2192                        round:
  2193                          type: integer
  2194                          example: 0
  2195                        prevotes:
  2196                          type: array
  2197                          items:
  2198                            type: string
  2199                          example:
  2200                            - "Vote{0:000001E443FD 1262197/00/1(Prevote) 634ADAF1F402 7BB974E1BA40 @ 2019-08-01T11:52:35.513572509Z}"
  2201                            - "nil-Vote"
  2202                        prevotes_bit_array:
  2203                          type: string
  2204                          example: "BA{100:xxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx} 169753436/170151262 = 1.00"
  2205                        precommits:
  2206                          type: array
  2207                          items:
  2208                            type: string
  2209                          example:
  2210                            - "Vote{5:18C78D135C9D 1262197/00/2(Precommit) 634ADAF1F402 8B5EFFFEABCD @ 2019-08-01T11:52:36.25600005Z}"
  2211                            - "nil-Vote"
  2212                        precommits_bit_array:
  2213                          type: string
  2214                          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"
  2215                  proposer:
  2216                    type: object
  2217                    properties:
  2218                      address:
  2219                        type: string
  2220                        example: "D540AB022088612AC74B287D076DBFBC4A377A2E"
  2221                      index:
  2222                        type: integer
  2223                        example: 0
  2224                type: object
  2225            type: object
  2226  
  2227      ConsensusParamsResponse:
  2228        type: object
  2229        required:
  2230          - "jsonrpc"
  2231          - "id"
  2232          - "result"
  2233        properties:
  2234          jsonrpc:
  2235            type: string
  2236            example: "2.0"
  2237          id:
  2238            type: integer
  2239            example: 0
  2240          result:
  2241            type: object
  2242            required:
  2243              - "block_height"
  2244              - "consensus_params"
  2245            properties:
  2246              block_height:
  2247                type: string
  2248                example: "1"
  2249              consensus_params:
  2250                $ref: "#/components/schemas/ConsensusParams"
  2251  
  2252      NumUnconfirmedTransactionsResponse:
  2253        type: object
  2254        required:
  2255          - "jsonrpc"
  2256          - "id"
  2257          - "result"
  2258        properties:
  2259          jsonrpc:
  2260            type: string
  2261            example: "2.0"
  2262          id:
  2263            type: integer
  2264            example: 0
  2265          result:
  2266            required:
  2267              - "n_txs"
  2268              - "total"
  2269              - "total_bytes"
  2270            properties:
  2271              n_txs:
  2272                type: string
  2273                example: "31"
  2274              total:
  2275                type: string
  2276                example: "82"
  2277              total_bytes:
  2278                type: string
  2279                example: "19974"
  2280            #          txs:
  2281            #            type: array
  2282            #            nullable: true
  2283            #            items:
  2284            #              type: string
  2285            #              nullable: true
  2286            #            example:
  2287            #              - "gAPwYl3uCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUA75/FmYq9WymsOBJ0XSJ8yV8zmQKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhQbrvwbvlNiT+Yjr86G+YQNx7kRVgowjE1xDQoUjJyJG+WaWBwSiGannBRFdrbma+8SFK2m+1oxgILuQLO55n8mWfnbIzyPCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUQNGfkmhTNMis4j+dyMDIWXdIPiYKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhS8sL0D0wwgGCItQwVowak5YB38KRIUCg4KBXVhdG9tEgUxMDA1NBDoxRgaagom61rphyECn8x7emhhKdRCB2io7aS/6Cpuq5NbVqbODmqOT3jWw6kSQKUresk+d+Gw0BhjiggTsu8+1voW+VlDCQ1GRYnMaFOHXhyFv7BCLhFWxLxHSAYT8a5XqoMayosZf9mANKdXArA="
  2288            type: object
  2289  
  2290      UnconfirmedTransactionsResponse:
  2291        type: object
  2292        required:
  2293          - "jsonrpc"
  2294          - "id"
  2295          - "result"
  2296        properties:
  2297          jsonrpc:
  2298            type: string
  2299            example: "2.0"
  2300          id:
  2301            type: integer
  2302            example: 0
  2303          result:
  2304            required:
  2305              - "n_txs"
  2306              - "total"
  2307              - "total_bytes"
  2308              - "txs"
  2309            properties:
  2310              n_txs:
  2311                type: string
  2312                example: "82"
  2313              total:
  2314                type: string
  2315                example: "82"
  2316              total_bytes:
  2317                type: string
  2318                example: "19974"
  2319              txs:
  2320                type: array
  2321                nullable: true
  2322                items:
  2323                  type: string
  2324                  nullable: true
  2325                example:
  2326                  - "gAPwYl3uCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUA75/FmYq9WymsOBJ0XSJ8yV8zmQKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhQbrvwbvlNiT+Yjr86G+YQNx7kRVgowjE1xDQoUjJyJG+WaWBwSiGannBRFdrbma+8SFK2m+1oxgILuQLO55n8mWfnbIzyPCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUQNGfkmhTNMis4j+dyMDIWXdIPiYKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhS8sL0D0wwgGCItQwVowak5YB38KRIUCg4KBXVhdG9tEgUxMDA1NBDoxRgaagom61rphyECn8x7emhhKdRCB2io7aS/6Cpuq5NbVqbODmqOT3jWw6kSQKUresk+d+Gw0BhjiggTsu8+1voW+VlDCQ1GRYnMaFOHXhyFv7BCLhFWxLxHSAYT8a5XqoMayosZf9mANKdXArA="
  2327            type: object
  2328  
  2329      TxSearchResponse:
  2330        type: object
  2331        required:
  2332          - "jsonrpc"
  2333          - "id"
  2334          - "result"
  2335        properties:
  2336          jsonrpc:
  2337            type: string
  2338            example: "2.0"
  2339          id:
  2340            type: integer
  2341            example: 0
  2342          result:
  2343            required:
  2344              - "txs"
  2345              - "total_count"
  2346            properties:
  2347              txs:
  2348                type: array
  2349                items:
  2350                  type: object
  2351                  properties:
  2352                    hash:
  2353                      type: string
  2354                      example: "D70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
  2355                    height:
  2356                      type: string
  2357                      example: "1000"
  2358                    index:
  2359                      type: integer
  2360                      example: 0
  2361                    tx_result:
  2362                      required:
  2363                        - "log"
  2364                        - "gas_wanted"
  2365                        - "gas_used"
  2366                        - "tags"
  2367                      properties:
  2368                        log:
  2369                          type: string
  2370                          example: '[{"msg_index":"0","success":true,"log":""}]'
  2371                        gas_wanted:
  2372                          type: string
  2373                          example: "200000"
  2374                        gas_used:
  2375                          type: string
  2376                          example: "28596"
  2377                        tags:
  2378                          $ref: "#/components/schemas/Event"
  2379                      type: object
  2380                    tx:
  2381                      type: string
  2382                      example: "5wHwYl3uCkaoo2GaChQmSIu8hxpJxLcCuIi8fiHN4TMwrRIU/Af1cEG7Rcs/6LjTl7YjRSymJfYaFAoFdWF0b20SCzE0OTk5OTk1MDAwEhMKDQoFdWF0b20SBDUwMDAQwJoMGmoKJuta6YchAwswBShaB1wkZBctLIhYqBC3JrAI28XGzxP+rVEticGEEkAc+khTkKL9CDE47aDvjEHvUNt+izJfT4KVF2v2JkC+bmlH9K08q3PqHeMI9Z5up+XMusnTqlP985KF+SI5J3ZOIhhNYWRlIGJ5IENpcmNsZSB3aXRoIGxvdmU="
  2383                    proof:
  2384                      required:
  2385                        - "RootHash"
  2386                        - "Data"
  2387                        - "Proof"
  2388                      properties:
  2389                        RootHash:
  2390                          type: string
  2391                          example: "72FE6BF6D4109105357AECE0A82E99D0F6288854D16D8767C5E72C57F876A14D"
  2392                        Data:
  2393                          type: string
  2394                          example: "5wHwYl3uCkaoo2GaChQmSIu8hxpJxLcCuIi8fiHN4TMwrRIU/Af1cEG7Rcs/6LjTl7YjRSymJfYaFAoFdWF0b20SCzE0OTk5OTk1MDAwEhMKDQoFdWF0b20SBDUwMDAQwJoMGmoKJuta6YchAwswBShaB1wkZBctLIhYqBC3JrAI28XGzxP+rVEticGEEkAc+khTkKL9CDE47aDvjEHvUNt+izJfT4KVF2v2JkC+bmlH9K08q3PqHeMI9Z5up+XMusnTqlP985KF+SI5J3ZOIhhNYWRlIGJ5IENpcmNsZSB3aXRoIGxvdmU="
  2395                        Proof:
  2396                          required:
  2397                            - "total"
  2398                            - "index"
  2399                            - "leaf_hash"
  2400                            - "aunts"
  2401                          properties:
  2402                            total:
  2403                              type: string
  2404                              example: "2"
  2405                            index:
  2406                              type: string
  2407                              example: "0"
  2408                            leaf_hash:
  2409                              type: string
  2410                              example: "eoJxKCzF3m72Xiwb/Q43vJ37/2Sx8sfNS9JKJohlsYI="
  2411                            aunts:
  2412                              type: array
  2413                              items:
  2414                                type: string
  2415                              example:
  2416                                - "eWb+HG/eMmukrQj4vNGyFYb3nKQncAWacq4HF5eFzDY="
  2417                          type: object
  2418                      type: object
  2419              total_count:
  2420                type: string
  2421                example: "2"
  2422            type: object
  2423  
  2424      TxResponse:
  2425        type: object
  2426        required:
  2427          - "jsonrpc"
  2428          - "id"
  2429          - "result"
  2430        properties:
  2431          jsonrpc:
  2432            type: string
  2433            example: "2.0"
  2434          id:
  2435            type: integer
  2436            example: 0
  2437          result:
  2438            required:
  2439              - "hash"
  2440              - "height"
  2441              - "index"
  2442              - "tx_result"
  2443              - "tx"
  2444            properties:
  2445              hash:
  2446                type: string
  2447                example: "D70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
  2448              height:
  2449                type: string
  2450                example: "1000"
  2451              index:
  2452                type: integer
  2453                example: 0
  2454              tx_result:
  2455                required:
  2456                  - "log"
  2457                  - "gas_wanted"
  2458                  - "gas_used"
  2459                  - "tags"
  2460                properties:
  2461                  log:
  2462                    type: string
  2463                    example: '[{"msg_index":"0","success":true,"log":""}]'
  2464                  gas_wanted:
  2465                    type: string
  2466                    example: "200000"
  2467                  gas_used:
  2468                    type: string
  2469                    example: "28596"
  2470                  tags:
  2471                    type: array
  2472                    items:
  2473                      $ref: "#/components/schemas/Event"
  2474                type: object
  2475              tx:
  2476                type: string
  2477                example: "5wHwYl3uCkaoo2GaChQmSIu8hxpJxLcCuIi8fiHN4TMwrRIU/Af1cEG7Rcs/6LjTl7YjRSymJfYaFAoFdWF0b20SCzE0OTk5OTk1MDAwEhMKDQoFdWF0b20SBDUwMDAQwJoMGmoKJuta6YchAwswBShaB1wkZBctLIhYqBC3JrAI28XGzxP+rVEticGEEkAc+khTkKL9CDE47aDvjEHvUNt+izJfT4KVF2v2JkC+bmlH9K08q3PqHeMI9Z5up+XMusnTqlP985KF+SI5J3ZOIhhNYWRlIGJ5IENpcmNsZSB3aXRoIGxvdmU="
  2478            type: object
  2479  
  2480      ABCIInfoResponse:
  2481        type: object
  2482        required:
  2483          - "jsonrpc"
  2484          - "id"
  2485        properties:
  2486          jsonrpc:
  2487            type: string
  2488            example: "2.0"
  2489          id:
  2490            type: integer
  2491            example: 0
  2492          result:
  2493            required:
  2494              - "response"
  2495            properties:
  2496              response:
  2497                required:
  2498                  - "data"
  2499                  - "app_version"
  2500                  - "version"
  2501                properties:
  2502                  data:
  2503                    type: string
  2504                    example: '{"size":0}'
  2505                  version:
  2506                    type: string
  2507                    example: "0.16.1"
  2508                  app_version:
  2509                    type: string
  2510                    example: "1314126"
  2511                type: object
  2512            type: object
  2513  
  2514      ABCIQueryResponse:
  2515        type: object
  2516        required:
  2517          - "error"
  2518          - "result"
  2519          - "id"
  2520          - "jsonrpc"
  2521        properties:
  2522          error:
  2523            type: string
  2524            example: ""
  2525          result:
  2526            required:
  2527              - "response"
  2528            properties:
  2529              response:
  2530                required:
  2531                  - "log"
  2532                  - "height"
  2533                  - "proof"
  2534                  - "value"
  2535                  - "key"
  2536                  - "index"
  2537                  - "code"
  2538                properties:
  2539                  log:
  2540                    type: string
  2541                    example: "exists"
  2542                  height:
  2543                    type: string
  2544                    example: "0"
  2545                  proof:
  2546                    type: string
  2547                    example: "010114FED0DAD959F36091AD761C922ABA3CBF1D8349990101020103011406AA2262E2F448242DF2C2607C3CDC705313EE3B0001149D16177BC71E445476174622EA559715C293740C"
  2548                  value:
  2549                    type: string
  2550                    example: "61626364"
  2551                  key:
  2552                    type: string
  2553                    example: "61626364"
  2554                  index:
  2555                    type: string
  2556                    example: "-1"
  2557                  code:
  2558                    type: string
  2559                    example: "0"
  2560                type: object
  2561            type: object
  2562          id:
  2563            type: integer
  2564            example: 0
  2565          jsonrpc:
  2566            type: string
  2567            example: "2.0"
  2568  
  2569      BroadcastEvidenceResponse:
  2570        type: object
  2571        required:
  2572          - "id"
  2573          - "jsonrpc"
  2574        properties:
  2575          error:
  2576            type: string
  2577            example: ""
  2578          result:
  2579            type: string
  2580            example: ""
  2581          id:
  2582            type: integer
  2583            example: 0
  2584          jsonrpc:
  2585            type: string
  2586            example: "2.0"
  2587  
  2588      BroadcastTxCommitResponse:
  2589        type: object
  2590        required:
  2591          - "error"
  2592          - "result"
  2593          - "id"
  2594          - "jsonrpc"
  2595        properties:
  2596          error:
  2597            type: string
  2598            example: ""
  2599          result:
  2600            required:
  2601              - "height"
  2602              - "hash"
  2603              - "deliver_tx"
  2604              - "check_tx"
  2605            properties:
  2606              height:
  2607                type: string
  2608                example: "26682"
  2609              hash:
  2610                type: string
  2611                example: "75CA0F856A4DA078FC4911580360E70CEFB2EBEE"
  2612              deliver_tx:
  2613                required:
  2614                  - "log"
  2615                  - "data"
  2616                  - "code"
  2617                properties:
  2618                  log:
  2619                    type: string
  2620                    example: ""
  2621                  data:
  2622                    type: string
  2623                    example: ""
  2624                  code:
  2625                    type: string
  2626                    example: "0"
  2627                type: object
  2628              check_tx:
  2629                required:
  2630                  - "log"
  2631                  - "data"
  2632                  - "code"
  2633                properties:
  2634                  log:
  2635                    type: string
  2636                    example: ""
  2637                  data:
  2638                    type: string
  2639                    example: ""
  2640                  code:
  2641                    type: string
  2642                    example: "0"
  2643                type: object
  2644            type: object
  2645          id:
  2646            type: integer
  2647            example: 0
  2648          jsonrpc:
  2649            type: string
  2650            example: "2.0"
  2651  
  2652      CheckTxResponse:
  2653        type: object
  2654        required:
  2655          - "error"
  2656          - "result"
  2657          - "id"
  2658          - "jsonrpc"
  2659        properties:
  2660          error:
  2661            type: string
  2662            example: ""
  2663          result:
  2664            required:
  2665              - "log"
  2666              - "data"
  2667              - "code"
  2668            properties:
  2669              code:
  2670                type: string
  2671                example: "0"
  2672              data:
  2673                type: string
  2674                example: ""
  2675              log:
  2676                type: string
  2677                example: ""
  2678              info:
  2679                type: string
  2680                example: ""
  2681              gas_wanted:
  2682                type: string
  2683                example: "1"
  2684              gas_used:
  2685                type: string
  2686                example: "0"
  2687              events:
  2688                type: array
  2689                nullable: true
  2690                items:
  2691                  type: object
  2692                  properties:
  2693                    type:
  2694                      type: string
  2695                      example: "app"
  2696                    attributes:
  2697                      type: array
  2698                      nullable: false
  2699                      items:
  2700                        $ref: "#/components/schemas/Event"
  2701              codespace:
  2702                type: string
  2703                example: "bank"
  2704            type: object
  2705          id:
  2706            type: integer
  2707            example: 0
  2708          jsonrpc:
  2709            type: string
  2710            example: "2.0"
  2711  
  2712      BroadcastTxResponse:
  2713        type: object
  2714        required:
  2715          - "jsonrpc"
  2716          - "id"
  2717          - "result"
  2718          - "error"
  2719        properties:
  2720          jsonrpc:
  2721            type: string
  2722            example: "2.0"
  2723          id:
  2724            type: integer
  2725            example: 0
  2726          result:
  2727            required:
  2728              - "code"
  2729              - "data"
  2730              - "log"
  2731              - "hash"
  2732            properties:
  2733              code:
  2734                type: string
  2735                example: "0"
  2736              data:
  2737                type: string
  2738                example: ""
  2739              log:
  2740                type: string
  2741                example: ""
  2742              codespace:
  2743                type: string
  2744                example: "ibc"
  2745              hash:
  2746                type: string
  2747                example: "0D33F2F03A5234F38706E43004489E061AC40A2E"
  2748            type: object
  2749          error:
  2750            type: string
  2751            example: ""
  2752  
  2753      dialResp:
  2754        type: object
  2755        properties:
  2756          Log:
  2757            type: string
  2758            example: "Dialing seeds in progress. See /net_info for details"
  2759  
  2760      BlockSearchResponse:
  2761        type: object
  2762        required:
  2763          - "jsonrpc"
  2764          - "id"
  2765          - "result"
  2766        properties:
  2767          jsonrpc:
  2768            type: string
  2769            example: "2.0"
  2770          id:
  2771            type: integer
  2772            example: 0
  2773          result:
  2774            required:
  2775              - "blocks"
  2776              - "total_count"
  2777            properties:
  2778              blocks:
  2779                type: array
  2780                items:
  2781                  $ref: "#/components/schemas/BlockComplete"
  2782              total_count:
  2783                type: integer
  2784                example: 2
  2785            type: object
  2786  
  2787      ###### Reuseable types ######
  2788  
  2789      # Validator type with proposer prioirty
  2790      ValidatorPriority:
  2791        type: object
  2792        properties:
  2793          address:
  2794            type: string
  2795            example: "000001E443FD237E4B616E2FA69DF4EE3D49A94F"
  2796          pub_key:
  2797            required:
  2798              - "type"
  2799              - "value"
  2800            properties:
  2801              type:
  2802                type: string
  2803                example: "tendermint/PubKeyEd25519"
  2804              value:
  2805                type: string
  2806                example: "9tK9IT+FPdf2qm+5c2qaxi10sWP+3erWTKgftn2PaQM="
  2807            type: object
  2808          voting_power:
  2809            type: string
  2810            example: "239727"
  2811          proposer_priority:
  2812            type: string
  2813            example: "-11896414"
  2814  
  2815      # Stripped down validator
  2816      Validator:
  2817        type: object
  2818        properties:
  2819          pub_key:
  2820            $ref: "#/components/schemas/PubKey"
  2821          voting_power:
  2822            type: integer
  2823          address:
  2824            type: string
  2825  
  2826      # Consensus Params
  2827      ConsensusParams:
  2828        type: object
  2829        nullable: true
  2830        required:
  2831          - "block"
  2832          - "evidence"
  2833          - "validator"
  2834        properties:
  2835          block:
  2836            type: object
  2837            required:
  2838              - "max_bytes"
  2839              - "max_gas"
  2840              - "time_iota_ms"
  2841            properties:
  2842              max_bytes:
  2843                type: string
  2844                example: "22020096"
  2845              max_gas:
  2846                type: string
  2847                example: "1000"
  2848              time_iota_ms:
  2849                type: string
  2850                example: "1000"
  2851          evidence:
  2852            type: object
  2853            required:
  2854              - "max_age"
  2855            properties:
  2856              max_age:
  2857                type: string
  2858                example: "100000"
  2859          validator:
  2860            type: object
  2861            required:
  2862              - "pub_key_types"
  2863            properties:
  2864              pub_key_types:
  2865                type: array
  2866                items:
  2867                  type: string
  2868                example:
  2869                  - "ed25519"
  2870  
  2871      # Events in tendermint
  2872      Event:
  2873        type: object
  2874        properties:
  2875          key:
  2876            type: string
  2877            example: "YWN0aW9u"
  2878          value:
  2879            type: string
  2880            example: "c2VuZA=="
  2881          index:
  2882            type: boolean
  2883            example: false
  2884  
  2885      # Block Header
  2886      BlockHeader:
  2887        required:
  2888          - "version"
  2889          - "chain_id"
  2890          - "height"
  2891          - "time"
  2892          - "last_block_id"
  2893          - "last_commit_hash"
  2894          - "data_hash"
  2895          - "validators_hash"
  2896          - "next_validators_hash"
  2897          - "consensus_hash"
  2898          - "app_hash"
  2899          - "last_results_hash"
  2900          - "evidence_hash"
  2901          - "proposer_address"
  2902        properties:
  2903          version:
  2904            required:
  2905              - "block"
  2906              - "app"
  2907            properties:
  2908              block:
  2909                type: string
  2910                example: "10"
  2911              app:
  2912                type: string
  2913                example: "0"
  2914            type: object
  2915          chain_id:
  2916            type: string
  2917            example: "cosmoshub-2"
  2918          height:
  2919            type: string
  2920            example: "12"
  2921          time:
  2922            type: string
  2923            example: "2019-04-22T17:01:51.701356223Z"
  2924          last_block_id:
  2925            $ref: "#/components/schemas/BlockID"
  2926          last_commit_hash:
  2927            type: string
  2928            example: "21B9BC845AD2CB2C4193CDD17BFC506F1EBE5A7402E84AD96E64171287A34812"
  2929          data_hash:
  2930            type: string
  2931            example: "970886F99E77ED0D60DA8FCE0447C2676E59F2F77302B0C4AA10E1D02F18EF73"
  2932          validators_hash:
  2933            type: string
  2934            example: "D658BFD100CA8025CFD3BECFE86194322731D387286FBD26E059115FD5F2BCA0"
  2935          next_validators_hash:
  2936            type: string
  2937            example: "D658BFD100CA8025CFD3BECFE86194322731D387286FBD26E059115FD5F2BCA0"
  2938          consensus_hash:
  2939            type: string
  2940            example: "0F2908883A105C793B74495EB7D6DF2EEA479ED7FC9349206A65CB0F9987A0B8"
  2941          app_hash:
  2942            type: string
  2943            example: "223BF64D4A01074DC523A80E76B9BBC786C791FB0A1893AC5B14866356FCFD6C"
  2944          last_results_hash:
  2945            type: string
  2946            example: ""
  2947          evidence_hash:
  2948            type: string
  2949            example: ""
  2950          proposer_address:
  2951            type: string
  2952            example: "D540AB022088612AC74B287D076DBFBC4A377A2E"
  2953        type: object
  2954  
  2955      BlockID:
  2956        required:
  2957          - "hash"
  2958          - "parts"
  2959        properties:
  2960          hash:
  2961            type: string
  2962            example: "112BC173FD838FB68EB43476816CD7B4C6661B6884A9E357B417EE957E1CF8F7"
  2963          parts:
  2964            required:
  2965              - "total"
  2966              - "hash"
  2967            properties:
  2968              total:
  2969                type: integer
  2970                example: 1
  2971              hash:
  2972                type: string
  2973                example: "38D4B26B5B725C4F13571EFE022C030390E4C33C8CF6F88EDD142EA769642DBD"
  2974            type: object