github.com/arcology-network/consensus-engine@v1.9.0/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/tendermint/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/tendermint/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/tendermint/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/tendermint/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/tendermint/tendermint/abci/types"
   267              "github.com/tendermint/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/tendermint/tendermint/types#pkg-constants
   335  
   336          For complete query syntax, check out
   337          https://godoc.org/github.com/tendermint/tendermint/libs/pubsub/query.
   338  
   339          ```go
   340          import rpchttp "github.com/tendermint/rpc/client/http"
   341          import "github.com/tendermint/tendermint/types"
   342  
   343          client := rpchttp.New("tcp:0.0.0.0:26657", "/websocket")
   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", "/websocket")
   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 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:
   541                  ["f9baeaa15fedf5e1ef7448dd60f46c01f1a9e9c4@1.2.3.4:26656"]
   542        responses:
   543          "200":
   544            description: Dialing seeds in progress. See /net_info for details
   545            content:
   546              application/json:
   547                schema:
   548                  $ref: "#/components/schemas/dialResp"
   549          "500":
   550            description: empty error
   551            content:
   552              application/json:
   553                schema:
   554                  $ref: "#/components/schemas/ErrorResponse"
   555    /dial_peers:
   556      get:
   557        summary: Add Peers/Persistent Peers (unsafe)
   558        operationId: dial_peers
   559        tags:
   560          - Unsafe
   561        description: |
   562          Set a persistent peer, this route in under unsafe, and has to manually enabled to use.
   563  
   564          **Example:** curl 'localhost:26657/dial_peers?peers=\["f9baeaa15fedf5e1ef7448dd60f46c01f1a9e9c4@1.2.3.4:26656","0491d373a8e0fcf1023aaf18c51d6a1d0d4f31bd@5.6.7.8:26656"\]&persistent=false'
   565        parameters:
   566          - in: query
   567            name: persistent
   568            description: Have the peers you are dialing be persistent
   569            schema:
   570              type: boolean
   571              example: true
   572          - in: query
   573            name: unconditional
   574            description: Have the peers you are dialing be unconditional
   575            schema:
   576              type: boolean
   577              example: true
   578          - in: query
   579            name: private
   580            description: Have the peers you are dialing be private
   581            schema:
   582              type: boolean
   583              example: true
   584          - in: query
   585            name: peers
   586            description: array of peers to dial
   587            schema:
   588              type: array
   589              items:
   590                type: string
   591                example:
   592                  ["f9baeaa15fedf5e1ef7448dd60f46c01f1a9e9c4@1.2.3.4:26656"]
   593        responses:
   594          "200":
   595            description: Dialing seeds in progress. See /net_info for details
   596            content:
   597              application/json:
   598                schema:
   599                  $ref: "#/components/schemas/dialResp"
   600          "500":
   601            description: empty error
   602            content:
   603              application/json:
   604                schema:
   605                  $ref: "#/components/schemas/ErrorResponse"
   606    /blockchain:
   607      get:
   608        summary: "Get block headers (max: 20) for minHeight <= height <= maxHeight."
   609        operationId: blockchain
   610        parameters:
   611          - in: query
   612            name: minHeight
   613            description: Minimum block height to return
   614            schema:
   615              type: integer
   616              example: 1
   617          - in: query
   618            name: maxHeight
   619            description: Maximum block height to return
   620            schema:
   621              type: integer
   622              example: 2
   623        tags:
   624          - Info
   625        description: |
   626          Get block headers for minHeight <= height maxHeight.
   627  
   628          At most 20 items will be returned.
   629        responses:
   630          "200":
   631            description: Block headers, returned in descending order (highest first).
   632            content:
   633              application/json:
   634                schema:
   635                  $ref: "#/components/schemas/BlockchainResponse"
   636          "500":
   637            description: Error
   638            content:
   639              application/json:
   640                schema:
   641                  $ref: "#/components/schemas/ErrorResponse"
   642    /block:
   643      get:
   644        summary: Get block at a specified height
   645        operationId: block
   646        parameters:
   647          - in: query
   648            name: height
   649            schema:
   650              type: integer
   651              default: 0
   652              example: 1
   653            description: height to return. If no height is provided, it will fetch the latest block.
   654        tags:
   655          - Info
   656        description: |
   657          Get Block.
   658        responses:
   659          "200":
   660            description: Block informations.
   661            content:
   662              application/json:
   663                schema:
   664                  $ref: "#/components/schemas/BlockResponse"
   665          "500":
   666            description: Error
   667            content:
   668              application/json:
   669                schema:
   670                  $ref: "#/components/schemas/ErrorResponse"
   671    /block_by_hash:
   672      get:
   673        summary: Get block by hash
   674        operationId: block_by_hash
   675        parameters:
   676          - in: query
   677            name: hash
   678            description: block hash
   679            required: true
   680            schema:
   681              type: string
   682              example: "0xD70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
   683        tags:
   684          - Info
   685        description: |
   686          Get Block By Hash.
   687        responses:
   688          "200":
   689            description: Block informations.
   690            content:
   691              application/json:
   692                schema:
   693                  $ref: "#/components/schemas/BlockResponse"
   694          "500":
   695            description: Error
   696            content:
   697              application/json:
   698                schema:
   699                  $ref: "#/components/schemas/ErrorResponse"
   700    /block_results:
   701      get:
   702        summary: Get block results at a specified height
   703        operationId: block_results
   704        parameters:
   705          - in: query
   706            name: height
   707            description: height to return. If no height is provided, it will fetch informations regarding the latest block.
   708            schema:
   709              type: integer
   710              default: 0
   711              example: 1
   712        tags:
   713          - Info
   714        description: |
   715          Get block_results.
   716        responses:
   717          "200":
   718            description: Block results.
   719            content:
   720              application/json:
   721                schema:
   722                  $ref: "#/components/schemas/BlockResultsResponse"
   723          "500":
   724            description: Error
   725            content:
   726              application/json:
   727                schema:
   728                  $ref: "#/components/schemas/ErrorResponse"
   729    /commit:
   730      get:
   731        summary: Get commit results at a specified height
   732        operationId: commit
   733        parameters:
   734          - in: query
   735            name: height
   736            description: height to return. If no height is provided, it will fetch commit informations regarding the latest block.
   737            schema:
   738              type: integer
   739              default: 0
   740              example: 1
   741        tags:
   742          - Info
   743        description: |
   744          Get Commit.
   745        responses:
   746          "200":
   747            description: |
   748              Commit results.
   749  
   750              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.
   751            content:
   752              application/json:
   753                schema:
   754                  $ref: "#/components/schemas/CommitResponse"
   755          "500":
   756            description: Error
   757            content:
   758              application/json:
   759                schema:
   760                  $ref: "#/components/schemas/ErrorResponse"
   761    /validators:
   762      get:
   763        summary: Get validator set at a specified height
   764        operationId: validators
   765        parameters:
   766          - in: query
   767            name: height
   768            description: height to return. If no height is provided, it will fetch validator set which corresponds to the latest block.
   769            schema:
   770              type: integer
   771              default: 0
   772              example: 1
   773          - in: query
   774            name: page
   775            description: "Page number (1-based)"
   776            required: false
   777            schema:
   778              type: integer
   779              default: 1
   780              example: 1
   781          - in: query
   782            name: per_page
   783            description: "Number of entries per page (max: 100)"
   784            required: false
   785            schema:
   786              type: integer
   787              example: 30
   788              default: 30
   789        tags:
   790          - Info
   791        description: |
   792          Get Validators. Validators are sorted by voting power.
   793        responses:
   794          "200":
   795            description: Commit results.
   796            content:
   797              application/json:
   798                schema:
   799                  $ref: "#/components/schemas/ValidatorsResponse"
   800          "500":
   801            description: Error
   802            content:
   803              application/json:
   804                schema:
   805                  $ref: "#/components/schemas/ErrorResponse"
   806    /genesis:
   807      get:
   808        summary: Get Genesis
   809        operationId: genesis
   810        tags:
   811          - Info
   812        description: |
   813          Get genesis.
   814        responses:
   815          "200":
   816            description: Genesis results.
   817            content:
   818              application/json:
   819                schema:
   820                  $ref: "#/components/schemas/GenesisResponse"
   821          "500":
   822            description: Error
   823            content:
   824              application/json:
   825                schema:
   826                  $ref: "#/components/schemas/ErrorResponse"
   827    /dump_consensus_state:
   828      get:
   829        summary: Get consensus state
   830        operationId: dump_consensus_state
   831        tags:
   832          - Info
   833        description: |
   834          Get consensus state.
   835  
   836          Not safe to call from inside the ABCI application during a block execution.
   837        responses:
   838          "200":
   839            description: |
   840              Complete consensus state.
   841  
   842              See https://pkg.go.dev/github.com/tendermint/tendermint/types?tab=doc#Vote.String for Vote string description.
   843            content:
   844              application/json:
   845                schema:
   846                  $ref: "#/components/schemas/DumpConsensusResponse"
   847          "500":
   848            description: Error
   849            content:
   850              application/json:
   851                schema:
   852                  $ref: "#/components/schemas/ErrorResponse"
   853    /consensus_state:
   854      get:
   855        summary: Get consensus state
   856        operationId: consensus_state
   857        tags:
   858          - Info
   859        description: |
   860          Get consensus state.
   861  
   862          Not safe to call from inside the ABCI application during a block execution.
   863        responses:
   864          "200":
   865            description: consensus state results.
   866            content:
   867              application/json:
   868                schema:
   869                  $ref: "#/components/schemas/ConsensusStateResponse"
   870          "500":
   871            description: Error
   872            content:
   873              application/json:
   874                schema:
   875                  $ref: "#/components/schemas/ErrorResponse"
   876    /consensus_params:
   877      get:
   878        summary: Get consensus parameters
   879        operationId: consensus_params
   880        parameters:
   881          - in: query
   882            name: height
   883            description: height to return. If no height is provided, it will fetch commit informations regarding the latest block.
   884            schema:
   885              type: integer
   886              default: 0
   887              example: 1
   888        tags:
   889          - Info
   890        description: |
   891          Get consensus parameters.
   892        responses:
   893          "200":
   894            description: consensus parameters results.
   895            content:
   896              application/json:
   897                schema:
   898                  $ref: "#/components/schemas/ConsensusParamsResponse"
   899          "500":
   900            description: Error
   901            content:
   902              application/json:
   903                schema:
   904                  $ref: "#/components/schemas/ErrorResponse"
   905    /unconfirmed_txs:
   906      get:
   907        summary: Get the list of unconfirmed transactions
   908        operationId: unconfirmed_txs
   909        parameters:
   910          - in: query
   911            name: limit
   912            description: Maximum number of unconfirmed transactions to return (max 100)
   913            required: false
   914            schema:
   915              type: integer
   916              default: 30
   917              example: 1
   918        tags:
   919          - Info
   920        description: |
   921          Get list of unconfirmed transactions
   922        responses:
   923          "200":
   924            description: List of unconfirmed transactions
   925            content:
   926              application/json:
   927                schema:
   928                  $ref: "#/components/schemas/UnconfirmedTransactionsResponse"
   929          "500":
   930            description: Error
   931            content:
   932              application/json:
   933                schema:
   934                  $ref: "#/components/schemas/ErrorResponse"
   935    /num_unconfirmed_txs:
   936      get:
   937        summary: Get data about unconfirmed transactions
   938        operationId: num_unconfirmed_txs
   939        tags:
   940          - Info
   941        description: |
   942          Get data about unconfirmed transactions
   943        responses:
   944          "200":
   945            description: status about unconfirmed transactions
   946            content:
   947              application/json:
   948                schema:
   949                  $ref: "#/components/schemas/NumUnconfirmedTransactionsResponse"
   950          "500":
   951            description: Error
   952            content:
   953              application/json:
   954                schema:
   955                  $ref: "#/components/schemas/ErrorResponse"
   956    /tx_search:
   957      get:
   958        summary: Search for transactions
   959        description: |
   960          Search for transactions w/ their results.
   961  
   962          See /subscribe for the query syntax.
   963        operationId: tx_search
   964        parameters:
   965          - in: query
   966            name: query
   967            description: Query
   968            required: true
   969            schema:
   970              type: string
   971              example: "tx.height=1000"
   972          - in: query
   973            name: prove
   974            description: Include proofs of the transactions inclusion in the block
   975            required: false
   976            schema:
   977              type: boolean
   978              default: false
   979              example: true
   980          - in: query
   981            name: page
   982            description: "Page number (1-based)"
   983            required: false
   984            schema:
   985              type: integer
   986              default: 1
   987              example: 1
   988          - in: query
   989            name: per_page
   990            description: "Number of entries per page (max: 100)"
   991            required: false
   992            schema:
   993              type: integer
   994              default: 30
   995              example: 30
   996          - in: query
   997            name: order_by
   998            description: Order in which transactions are sorted ("asc" or "desc"), by height & index. If empty, default sorting will be still applied.
   999            required: false
  1000            schema:
  1001              type: string
  1002              default: "asc"
  1003              example: "asc"
  1004        tags:
  1005          - Info
  1006        responses:
  1007          "200":
  1008            description: List of unconfirmed transactions
  1009            content:
  1010              application/json:
  1011                schema:
  1012                  $ref: "#/components/schemas/TxSearchResponse"
  1013          "500":
  1014            description: Error
  1015            content:
  1016              application/json:
  1017                schema:
  1018                  $ref: "#/components/schemas/ErrorResponse"
  1019    /tx:
  1020      get:
  1021        summary: Get transactions by hash
  1022        operationId: tx
  1023        parameters:
  1024          - in: query
  1025            name: hash
  1026            description: transaction Hash to retrive
  1027            required: true
  1028            schema:
  1029              type: string
  1030              example: "0xD70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
  1031          - in: query
  1032            name: prove
  1033            description: Include proofs of the transactions inclusion in the block
  1034            required: false
  1035            schema:
  1036              type: boolean
  1037              example: true
  1038              default: false
  1039        tags:
  1040          - Info
  1041        description: |
  1042          Get a trasasction
  1043        responses:
  1044          "200":
  1045            description: Get a transaction`
  1046            content:
  1047              application/json:
  1048                schema:
  1049                  $ref: "#/components/schemas/TxResponse"
  1050          "500":
  1051            description: Error
  1052            content:
  1053              application/json:
  1054                schema:
  1055                  $ref: "#/components/schemas/ErrorResponse"
  1056    /abci_info:
  1057      get:
  1058        summary: Get some info about the application.
  1059        operationId: abci_info
  1060        tags:
  1061          - ABCI
  1062        description: |
  1063          Get some info about the application.
  1064        responses:
  1065          "200":
  1066            description: Get some info about the application.
  1067            content:
  1068              application/json:
  1069                schema:
  1070                  $ref: "#/components/schemas/ABCIInfoResponse"
  1071          "500":
  1072            description: Error
  1073            content:
  1074              application/json:
  1075                schema:
  1076                  $ref: "#/components/schemas/ErrorResponse"
  1077    /abci_query:
  1078      get:
  1079        summary: Query the application for some information.
  1080        operationId: abci_query
  1081        parameters:
  1082          - in: query
  1083            name: path
  1084            description: Path to the data ("/a/b/c")
  1085            required: true
  1086            schema:
  1087              type: string
  1088              example: "/a/b/c"
  1089          - in: query
  1090            name: data
  1091            description: Data
  1092            required: true
  1093            schema:
  1094              type: string
  1095              example: "IHAVENOIDEA"
  1096          - in: query
  1097            name: height
  1098            description: Height (0 means latest)
  1099            required: false
  1100            schema:
  1101              type: integer
  1102              example: 1
  1103              default: 0
  1104          - in: query
  1105            name: prove
  1106            description: Include proofs of the transactions inclusion in the block
  1107            required: false
  1108            schema:
  1109              type: boolean
  1110              example: true
  1111              default: false
  1112        tags:
  1113          - ABCI
  1114        description: |
  1115          Query the application for some information.
  1116        responses:
  1117          "200":
  1118            description: Response of the submitted query
  1119            content:
  1120              application/json:
  1121                schema:
  1122                  $ref: "#/components/schemas/ABCIQueryResponse"
  1123          "500":
  1124            description: Error
  1125            content:
  1126              application/json:
  1127                schema:
  1128                  $ref: "#/components/schemas/ErrorResponse"
  1129    /broadcast_evidence:
  1130      get:
  1131        summary: Broadcast evidence of the misbehavior.
  1132        operationId: broadcast_evidence
  1133        parameters:
  1134          - in: query
  1135            name: evidence
  1136            description: JSON evidence
  1137            required: true
  1138            schema:
  1139              type: string
  1140              example: "JSON_EVIDENCE_encoded"
  1141        tags:
  1142          - Info
  1143        description: |
  1144          Broadcast evidence of the misbehavior.
  1145        responses:
  1146          "200":
  1147            description: Broadcast evidence of the misbehavior.
  1148            content:
  1149              application/json:
  1150                schema:
  1151                  $ref: "#/components/schemas/BroadcastEvidenceResponse"
  1152          "500":
  1153            description: Error
  1154            content:
  1155              application/json:
  1156                schema:
  1157                  $ref: "#/components/schemas/ErrorResponse"
  1158  
  1159  components:
  1160    schemas:
  1161      JSONRPC:
  1162        type: object
  1163        properties:
  1164          id:
  1165            type: integer
  1166            example: 0
  1167          jsonrpc:
  1168            type: string
  1169            example: "2.0"
  1170      EmptyResponse:
  1171        description: Empty Response
  1172        allOf:
  1173          - $ref: "#/components/schemas/JSONRPC"
  1174          - type: object
  1175            properties:
  1176              result:
  1177                type: object
  1178                additionalProperties: {}
  1179      ErrorResponse:
  1180        description: Error Response
  1181        allOf:
  1182          - $ref: "#/components/schemas/JSONRPC"
  1183          - type: object
  1184            properties:
  1185              error:
  1186                type: string
  1187                example: "Description of failure"
  1188      ProtocolVersion:
  1189        type: object
  1190        properties:
  1191          p2p:
  1192            type: string
  1193            example: "7"
  1194          block:
  1195            type: string
  1196            example: "10"
  1197          app:
  1198            type: string
  1199            example: "0"
  1200      PubKey:
  1201        type: object
  1202        properties:
  1203          type:
  1204            type: string
  1205            example: "tendermint/PubKeyEd25519"
  1206          value:
  1207            type: string
  1208            example: "A6DoBUypNtUAyEHWtQ9bFjfNg8Bo9CrnkUGl6k6OHN4="
  1209      NodeInfo:
  1210        type: object
  1211        properties:
  1212          protocol_version:
  1213            $ref: "#/components/schemas/ProtocolVersion"
  1214          id:
  1215            type: string
  1216            example: "5576458aef205977e18fd50b274e9b5d9014525a"
  1217          listen_addr:
  1218            type: string
  1219            example: "tcp:0.0.0.0:26656"
  1220          network:
  1221            type: string
  1222            example: "cosmoshub-2"
  1223          version:
  1224            type: string
  1225            example: "0.32.1"
  1226          channels:
  1227            type: string
  1228            example: "4020212223303800"
  1229          moniker:
  1230            type: string
  1231            example: "moniker-node"
  1232          other:
  1233            type: object
  1234            properties:
  1235              tx_index:
  1236                type: string
  1237                example: "on"
  1238              rpc_address:
  1239                type: string
  1240                example: "tcp:0.0.0.0:26657"
  1241      SyncInfo:
  1242        type: object
  1243        properties:
  1244          latest_block_hash:
  1245            type: string
  1246            example: "790BA84C3545FCCC49A5C629CEE6EA58A6E875C3862175BDC11EE7AF54703501"
  1247          latest_app_hash:
  1248            type: string
  1249            example: "C9AEBB441B787D9F1D846DE51F3826F4FD386108B59B08239653ABF59455C3F8"
  1250          latest_block_height:
  1251            type: string
  1252            example: "1262196"
  1253          latest_block_time:
  1254            type: string
  1255            example: "2019-08-01T11:52:22.818762194Z"
  1256          earliest_block_hash:
  1257            type: string
  1258            example: "790BA84C3545FCCC49A5C629CEE6EA58A6E875C3862175BDC11EE7AF54703501"
  1259          earliest_app_hash:
  1260            type: string
  1261            example: "C9AEBB441B787D9F1D846DE51F3826F4FD386108B59B08239653ABF59455C3F8"
  1262          earliest_block_height:
  1263            type: string
  1264            example: "1262196"
  1265          earliest_block_time:
  1266            type: string
  1267            example: "2019-08-01T11:52:22.818762194Z"
  1268          catching_up:
  1269            type: boolean
  1270            example: false
  1271      ValidatorInfo:
  1272        type: object
  1273        properties:
  1274          address:
  1275            type: string
  1276            example: "5D6A51A8E9899C44079C6AF90618BA0369070E6E"
  1277          pub_key:
  1278            $ref: "#/components/schemas/PubKey"
  1279          voting_power:
  1280            type: string
  1281            example: "0"
  1282      Status:
  1283        description: Status Response
  1284        type: object
  1285        properties:
  1286          node_info:
  1287            $ref: "#/components/schemas/NodeInfo"
  1288          sync_info:
  1289            $ref: "#/components/schemas/SyncInfo"
  1290          validator_info:
  1291            $ref: "#/components/schemas/ValidatorInfo"
  1292      StatusResponse:
  1293        description: Status Response
  1294        allOf:
  1295          - $ref: "#/components/schemas/JSONRPC"
  1296          - type: object
  1297            properties:
  1298              result:
  1299                $ref: "#/components/schemas/Status"
  1300      Monitor:
  1301        type: object
  1302        properties:
  1303          Active:
  1304            type: boolean
  1305            example: true
  1306          Start:
  1307            type: string
  1308            example: "2019-07-31T14:31:28.66Z"
  1309          Duration:
  1310            type: string
  1311            example: "168901060000000"
  1312          Idle:
  1313            type: string
  1314            example: "168901040000000"
  1315          Bytes:
  1316            type: string
  1317            example: "5"
  1318          Samples:
  1319            type: string
  1320            example: "1"
  1321          InstRate:
  1322            type: string
  1323            example: "0"
  1324          CurRate:
  1325            type: string
  1326            example: "0"
  1327          AvgRate:
  1328            type: string
  1329            example: "0"
  1330          PeakRate:
  1331            type: string
  1332            example: "0"
  1333          BytesRem:
  1334            type: string
  1335            example: "0"
  1336          TimeRem:
  1337            type: string
  1338            example: "0"
  1339          Progress:
  1340            type: integer
  1341            example: 0
  1342      Channel:
  1343        type: object
  1344        properties:
  1345          ID:
  1346            type: integer
  1347            example: 48
  1348          SendQueueCapacity:
  1349            type: string
  1350            example: "1"
  1351          SendQueueSize:
  1352            type: string
  1353            example: "0"
  1354          Priority:
  1355            type: string
  1356            example: "5"
  1357          RecentlySent:
  1358            type: string
  1359            example: "0"
  1360      ConnectionStatus:
  1361        type: object
  1362        properties:
  1363          Duration:
  1364            type: string
  1365            example: "168901057956119"
  1366          SendMonitor:
  1367            $ref: "#/components/schemas/Monitor"
  1368          RecvMonitor:
  1369            $ref: "#/components/schemas/Monitor"
  1370          Channels:
  1371            type: array
  1372            items:
  1373              $ref: "#/components/schemas/Channel"
  1374      Peer:
  1375        type: object
  1376        properties:
  1377          node_info:
  1378            $ref: "#/components/schemas/NodeInfo"
  1379          is_outbound:
  1380            type: boolean
  1381            example: true
  1382          connection_status:
  1383            $ref: "#/components/schemas/ConnectionStatus"
  1384          remote_ip:
  1385            type: string
  1386            example: "95.179.155.35"
  1387      NetInfo:
  1388        type: object
  1389        properties:
  1390          listening:
  1391            type: boolean
  1392            example: true
  1393          listeners:
  1394            type: array
  1395            items:
  1396              type: string
  1397              example: "Listener(@)"
  1398          n_peers:
  1399            type: string
  1400            example: "1"
  1401          peers:
  1402            type: array
  1403            items:
  1404              $ref: "#/components/schemas/Peer"
  1405      NetInfoResponse:
  1406        description: NetInfo Response
  1407        allOf:
  1408          - $ref: "#/components/schemas/JSONRPC"
  1409          - type: object
  1410            properties:
  1411              result:
  1412                $ref: "#/components/schemas/NetInfo"
  1413  
  1414      BlockMeta:
  1415        type: object
  1416        properties:
  1417          block_id:
  1418            $ref: "#/components/schemas/BlockID"
  1419          block_size:
  1420            type: integer
  1421            example: 1000000
  1422          header:
  1423            $ref: "#/components/schemas/BlockHeader"
  1424          num_txs:
  1425            type: string
  1426            example: "54"
  1427  
  1428      Blockchain:
  1429        type: object
  1430        required:
  1431          - "last_height"
  1432          - "block_metas"
  1433        properties:
  1434          last_height:
  1435            type: string
  1436            example: "1276718"
  1437          block_metas:
  1438            type: array
  1439            items:
  1440              $ref: "#/components/schemas/BlockMeta"
  1441  
  1442      BlockchainResponse:
  1443        description: Blockchain info
  1444        allOf:
  1445          - $ref: "#/components/schemas/JSONRPC"
  1446          - type: object
  1447            properties:
  1448              result:
  1449                $ref: "#/components/schemas/Blockchain"
  1450  
  1451      Commit:
  1452        required:
  1453          - "type"
  1454          - "height"
  1455          - "round"
  1456          - "block_id"
  1457          - "timestamp"
  1458          - "validator_address"
  1459          - "validator_index"
  1460          - "signature"
  1461        properties:
  1462          type:
  1463            type: integer
  1464            example: 2
  1465          height:
  1466            type: string
  1467            example: "1262085"
  1468          round:
  1469            type: integer
  1470            example: 0
  1471          block_id:
  1472            $ref: "#/components/schemas/BlockID"
  1473          timestamp:
  1474            type: string
  1475            example: "2019-08-01T11:39:38.867269833Z"
  1476          validator_address:
  1477            type: string
  1478            example: "000001E443FD237E4B616E2FA69DF4EE3D49A94F"
  1479          validator_index:
  1480            type: integer
  1481            example: 0
  1482          signature:
  1483            type: string
  1484            example: "DBchvucTzAUEJnGYpNvMdqLhBAHG4Px8BsOBB3J3mAFCLGeuG7uJqy+nVngKzZdPhPi8RhmE/xcw/M9DOJjEDg=="
  1485  
  1486      Block:
  1487        type: object
  1488        properties:
  1489          header:
  1490            $ref: "#/components/schemas/BlockHeader"
  1491          data:
  1492            type: array
  1493            items:
  1494              type: string
  1495              example: "yQHwYl3uCkKoo2GaChRnd+THLQ2RM87nEZrE19910Z28ABIUWW/t8AtIMwcyU0sT32RcMDI9GF0aEAoFdWF0b20SBzEwMDAwMDASEwoNCgV1YXRvbRIEMzEwMRCd8gEaagom61rphyEDoJPxlcjRoNDtZ9xMdvs+lRzFaHe2dl2P5R2yVCWrsHISQKkqX5H1zXAIJuC57yw0Yb03Fwy75VRip0ZBtLiYsUqkOsPUoQZAhDNP+6LY+RUwz/nVzedkF0S29NZ32QXdGv0="
  1496          evidence:
  1497            type: array
  1498            items:
  1499              $ref: "#/components/schemas/Evidence"
  1500          last_commit:
  1501            type: object
  1502            properties:
  1503              height:
  1504                type: integer
  1505              round:
  1506                type: integer
  1507              block_id:
  1508                $ref: "#/components/schemas/BlockID"
  1509              signatures:
  1510                type: array
  1511                items:
  1512                  $ref: "#/components/schemas/Commit"
  1513  
  1514      Evidence:
  1515        type: object
  1516        properties:
  1517          type:
  1518            type: string
  1519          height:
  1520            type: integer
  1521          time:
  1522            type: integer
  1523          total_voting_power:
  1524            type: integer
  1525          validator:
  1526            $ref: "#/components/schemas/Validator"
  1527  
  1528      BlockComplete:
  1529        type: object
  1530        properties:
  1531          block_id:
  1532            $ref: "#/components/schemas/BlockID"
  1533          block:
  1534            $ref: "#/components/schemas/Block"
  1535      BlockResponse:
  1536        description: Blockc info
  1537        allOf:
  1538          - $ref: "#/components/schemas/JSONRPC"
  1539          - type: object
  1540            properties:
  1541              result:
  1542                $ref: "#/components/schemas/BlockComplete"
  1543  
  1544      ################## FROM NOW ON NEEDS REFACTOR ##################
  1545      BlockResultsResponse:
  1546        type: object
  1547        required:
  1548          - "jsonrpc"
  1549          - "id"
  1550          - "result"
  1551        properties:
  1552          jsonrpc:
  1553            type: string
  1554            example: "2.0"
  1555          id:
  1556            type: integer
  1557            example: 0
  1558          result:
  1559            type: object
  1560            required:
  1561              - "height"
  1562            properties:
  1563              height:
  1564                type: string
  1565                example: "12"
  1566              txs_results:
  1567                type: array
  1568                nullable: true
  1569                items:
  1570                  type: object
  1571                  properties:
  1572                    code:
  1573                      type: string
  1574                      example: "0"
  1575                    data:
  1576                      type: string
  1577                      example: ""
  1578                    log:
  1579                      type: string
  1580                      example: "not enough gas"
  1581                    info:
  1582                      type: string
  1583                      example: ""
  1584                    gas_wanted:
  1585                      type: string
  1586                      example: "100"
  1587                    gas_used:
  1588                      type: string
  1589                      example: "100"
  1590                    events:
  1591                      type: array
  1592                      nullable: true
  1593                      items:
  1594                        type: object
  1595                        properties:
  1596                          type:
  1597                            type: string
  1598                            example: "app"
  1599                          attributes:
  1600                            type: array
  1601                            nullable: false
  1602                            items:
  1603                              $ref: "#/components/schemas/Event"
  1604                    codespace:
  1605                      type: string
  1606                      example: "ibc"
  1607              begin_block_events:
  1608                type: array
  1609                nullable: true
  1610                items:
  1611                  type: object
  1612                  properties:
  1613                    type:
  1614                      type: string
  1615                      example: "app"
  1616                    attributes:
  1617                      type: array
  1618                      nullable: false
  1619                      items:
  1620                        $ref: "#/components/schemas/Event"
  1621              end_block:
  1622                type: array
  1623                nullable: true
  1624                items:
  1625                  type: object
  1626                  properties:
  1627                    type:
  1628                      type: string
  1629                      example: "app"
  1630                    attributes:
  1631                      type: array
  1632                      nullable: false
  1633                      items:
  1634                        $ref: "#/components/schemas/Event"
  1635              validator_updates:
  1636                type: array
  1637                nullable: true
  1638                items:
  1639                  type: object
  1640                  properties:
  1641                    pub_key:
  1642                      type: object
  1643                      required:
  1644                        - "type"
  1645                        - "value"
  1646                      properties:
  1647                        type:
  1648                          type: string
  1649                          example: "tendermint/PubKeyEd25519"
  1650                        value:
  1651                          type: string
  1652                          example: "9tK9IT+FPdf2qm+5c2qaxi10sWP+3erWTKgftn2PaQM="
  1653                    power:
  1654                      type: string
  1655                      example: "300"
  1656              consensus_params_updates:
  1657                $ref: "#/components/schemas/ConsensusParams"
  1658  
  1659      CommitResponse:
  1660        type: object
  1661        required:
  1662          - "jsonrpc"
  1663          - "id"
  1664          - "result"
  1665        properties:
  1666          jsonrpc:
  1667            type: string
  1668            example: "2.0"
  1669          id:
  1670            type: integer
  1671            example: 0
  1672          result:
  1673            required:
  1674              - "signed_header"
  1675              - "canonical"
  1676            properties:
  1677              signed_header:
  1678                required:
  1679                  - "header"
  1680                  - "commit"
  1681                properties:
  1682                  header:
  1683                    $ref: "#/components/schemas/BlockHeader"
  1684                  commit:
  1685                    required:
  1686                      - "height"
  1687                      - "round"
  1688                      - "block_id"
  1689                      - "signatures"
  1690                    properties:
  1691                      height:
  1692                        type: string
  1693                        example: "1311801"
  1694                      round:
  1695                        type: integer
  1696                        example: 0
  1697                      block_id:
  1698                        $ref: "#/components/schemas/BlockID"
  1699                      signatures:
  1700                        type: array
  1701                        items:
  1702                          type: object
  1703                          properties:
  1704                            block_id_flag:
  1705                              type: integer
  1706                              example: 2
  1707                            validator_address:
  1708                              type: string
  1709                              example: "000001E443FD237E4B616E2FA69DF4EE3D49A94F"
  1710                            timestamp:
  1711                              type: string
  1712                              example: "2019-04-22T17:01:58.376629719Z"
  1713                            signature:
  1714                              type: string
  1715                              example: "14jaTQXYRt8kbLKEhdHq7AXycrFImiLuZx50uOjs2+Zv+2i7RTG/jnObD07Jo2ubZ8xd7bNBJMqkgtkd0oQHAw=="
  1716                    type: object
  1717                type: object
  1718              canonical:
  1719                type: boolean
  1720                example: true
  1721            type: object
  1722      ValidatorsResponse:
  1723        type: object
  1724        required:
  1725          - "jsonrpc"
  1726          - "id"
  1727          - "result"
  1728        properties:
  1729          jsonrpc:
  1730            type: string
  1731            example: "2.0"
  1732          id:
  1733            type: integer
  1734            example: 0
  1735          result:
  1736            required:
  1737              - "block_height"
  1738              - "validators"
  1739            properties:
  1740              block_height:
  1741                type: string
  1742                example: "55"
  1743              validators:
  1744                type: array
  1745                items:
  1746                  $ref: "#/components/schemas/ValidatorPriority"
  1747              count:
  1748                type: string
  1749                example: "1"
  1750              total:
  1751                type: string
  1752                example: "25"
  1753            type: object
  1754      GenesisResponse:
  1755        type: object
  1756        required:
  1757          - "jsonrpc"
  1758          - "id"
  1759          - "result"
  1760        properties:
  1761          jsonrpc:
  1762            type: string
  1763            example: "2.0"
  1764          id:
  1765            type: integer
  1766            example: 0
  1767          result:
  1768            type: object
  1769            required:
  1770              - "genesis"
  1771            properties:
  1772              genesis:
  1773                type: object
  1774                required:
  1775                  - "genesis_time"
  1776                  - "chain_id"
  1777                  - "initial_height"
  1778                  - "consensus_params"
  1779                  - "validators"
  1780                  - "app_hash"
  1781                properties:
  1782                  genesis_time:
  1783                    type: string
  1784                    example: "2019-04-22T17:00:00Z"
  1785                  chain_id:
  1786                    type: string
  1787                    example: "cosmoshub-2"
  1788                  initial_height:
  1789                    type: string
  1790                    example: "2"
  1791                  consensus_params:
  1792                    $ref: "#/components/schemas/ConsensusParams"
  1793                  validators:
  1794                    type: array
  1795                    items:
  1796                      type: object
  1797                      properties:
  1798                        address:
  1799                          type: string
  1800                          example: "B00A6323737F321EB0B8D59C6FD497A14B60938A"
  1801                        pub_key:
  1802                          required:
  1803                            - "type"
  1804                            - "value"
  1805                          properties:
  1806                            type:
  1807                              type: string
  1808                              example: "tendermint/PubKeyEd25519"
  1809                            value:
  1810                              type: string
  1811                              example: "cOQZvh/h9ZioSeUMZB/1Vy1Xo5x2sjrVjlE/qHnYifM="
  1812                          type: object
  1813                        power:
  1814                          type: string
  1815                          example: "9328525"
  1816                        name:
  1817                          type: string
  1818                          example: "Certus One"
  1819                  app_hash:
  1820                    type: string
  1821                    example: ""
  1822                  app_state:
  1823                    properties: {}
  1824                    type: object
  1825  
  1826      DumpConsensusResponse:
  1827        type: object
  1828        required:
  1829          - "jsonrpc"
  1830          - "id"
  1831          - "result"
  1832        properties:
  1833          jsonrpc:
  1834            type: string
  1835            example: "2.0"
  1836          id:
  1837            type: integer
  1838            example: 0
  1839          result:
  1840            required:
  1841              - "round_state"
  1842              - "peers"
  1843            properties:
  1844              round_state:
  1845                required:
  1846                  - "height"
  1847                  - "round"
  1848                  - "step"
  1849                  - "start_time"
  1850                  - "commit_time"
  1851                  - "validators"
  1852                  - "proposal"
  1853                  - "proposal_block"
  1854                  - "proposal_block_parts"
  1855                  - "locked_round"
  1856                  - "locked_block"
  1857                  - "locked_block_parts"
  1858                  - "valid_round"
  1859                  - "valid_block"
  1860                  - "valid_block_parts"
  1861                  - "votes"
  1862                  - "commit_round"
  1863                  - "last_commit"
  1864                  - "last_validators"
  1865                  - "triggered_timeout_precommit"
  1866                properties:
  1867                  height:
  1868                    type: string
  1869                    example: "1311801"
  1870                  round:
  1871                    type: integer
  1872                    example: 0
  1873                  step:
  1874                    type: integer
  1875                    example: 3
  1876                  start_time:
  1877                    type: string
  1878                    example: "2019-08-05T11:28:49.064658805Z"
  1879                  commit_time:
  1880                    type: string
  1881                    example: "2019-08-05T11:28:44.064658805Z"
  1882                  validators:
  1883                    required:
  1884                      - "validators"
  1885                      - "proposer"
  1886                    properties:
  1887                      validators:
  1888                        type: array
  1889                        items:
  1890                          $ref: "#/components/schemas/ValidatorPriority"
  1891                      proposer:
  1892                        $ref: "#/components/schemas/ValidatorPriority"
  1893                    type: object
  1894                  locked_round:
  1895                    type: integer
  1896                    example: -1
  1897                  valid_round:
  1898                    type: string
  1899                    example: "-1"
  1900                  votes:
  1901                    type: array
  1902                    items:
  1903                      type: object
  1904                      properties:
  1905                        round:
  1906                          type: string
  1907                          example: "0"
  1908                        prevotes:
  1909                          type: array
  1910                          nullable: true
  1911                          items:
  1912                            type: string
  1913                          example:
  1914                            - "nil-Vote"
  1915                            - "Vote{19:46A3F8B8393B 1311801/00/1(Prevote) 000000000000 64CE682305CB @ 2019-08-05T11:28:47.374703444Z}"
  1916                        prevotes_bit_array:
  1917                          type: string
  1918                          example: "BA{100:___________________x________________________________________________________________________________} 209706/170220253 = 0.00"
  1919                        precommits:
  1920                          type: array
  1921                          nullable: true
  1922                          items:
  1923                            type: string
  1924                          example:
  1925                            - "nil-Vote"
  1926                        precommits_bit_array:
  1927                          type: string
  1928                          example: "BA{100:____________________________________________________________________________________________________} 0/170220253 = 0.00"
  1929                  commit_round:
  1930                    type: integer
  1931                    example: -1
  1932                  last_commit:
  1933                    nullable: true
  1934                    required:
  1935                      - "votes"
  1936                      - "votes_bit_array"
  1937                      - "peer_maj_23s"
  1938                    properties:
  1939                      votes:
  1940                        type: array
  1941                        items:
  1942                          type: string
  1943                        example:
  1944                          - "Vote{0:000001E443FD 1311800/00/2(Precommit) 3071ADB27D1A 77EE1B6B6847 @ 2019-08-05T11:28:43.810128139Z}"
  1945                      votes_bit_array:
  1946                        type: string
  1947                        example: "BA{100:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx} 170220253/170220253 = 1.00"
  1948                      peer_maj_23s:
  1949                        properties: {}
  1950                        type: object
  1951                    type: object
  1952                  last_validators:
  1953                    required:
  1954                      - "validators"
  1955                      - "proposer"
  1956                    properties:
  1957                      validators:
  1958                        type: array
  1959                        items:
  1960                          $ref: "#/components/schemas/ValidatorPriority"
  1961                      proposer:
  1962                        $ref: "#/components/schemas/ValidatorPriority"
  1963                    type: object
  1964                  triggered_timeout_precommit:
  1965                    type: boolean
  1966                    example: false
  1967                type: object
  1968              peers:
  1969                type: array
  1970                items:
  1971                  type: object
  1972                  properties:
  1973                    node_address:
  1974                      type: string
  1975                      example: "357f6a6c1d27414579a8185060aa8adf9815c43c@68.183.41.207:26656"
  1976                    peer_state:
  1977                      required:
  1978                        - "round_state"
  1979                        - "stats"
  1980                      properties:
  1981                        round_state:
  1982                          required:
  1983                            - "height"
  1984                            - "round"
  1985                            - "step"
  1986                            - "start_time"
  1987                            - "proposal"
  1988                            - "proposal_block_parts_header"
  1989                            - "proposal_block_parts"
  1990                            - "proposal_pol_round"
  1991                            - "proposal_pol"
  1992                            - "prevotes"
  1993                            - "precommits"
  1994                            - "last_commit_round"
  1995                            - "last_commit"
  1996                            - "catchup_commit_round"
  1997                            - "catchup_commit"
  1998                          properties:
  1999                            height:
  2000                              type: string
  2001                              example: "1311801"
  2002                            round:
  2003                              type: string
  2004                              example: "0"
  2005                            step:
  2006                              type: integer
  2007                              example: 3
  2008                            start_time:
  2009                              type: string
  2010                              example: "2019-08-05T11:28:49.21730864Z"
  2011                            proposal:
  2012                              type: boolean
  2013                              example: false
  2014                            proposal_block_parts_header:
  2015                              required:
  2016                                - "total"
  2017                                - "hash"
  2018                              properties:
  2019                                total:
  2020                                  type: integer
  2021                                  example: 0
  2022                                hash:
  2023                                  type: string
  2024                                  example: ""
  2025                              type: object
  2026                            proposal_pol_round:
  2027                              nullable: true
  2028                              type: integer
  2029                              example: -1
  2030                            proposal_pol:
  2031                              nullable: true
  2032                              type: string
  2033                              example: "____________________________________________________________________________________________________"
  2034                            prevotes:
  2035                              nullable: true
  2036                              type: string
  2037                              example: "___________________x________________________________________________________________________________"
  2038                            precommits:
  2039                              nullable: true
  2040                              type: string
  2041                              example: "____________________________________________________________________________________________________"
  2042                            last_commit_round:
  2043                              nullable: true
  2044                              type: integer
  2045                              example: 0
  2046                            last_commit:
  2047                              nullable: true
  2048                              type: string
  2049                              example: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  2050                            catchup_commit_round:
  2051                              type: integer
  2052                              nullable: true
  2053                              example: -1
  2054                            catchup_commit:
  2055                              nullable: true
  2056                              type: string
  2057                              example: "____________________________________________________________________________________________________"
  2058                          type: object
  2059                        stats:
  2060                          required:
  2061                            - "votes"
  2062                            - "block_parts"
  2063                          properties:
  2064                            votes:
  2065                              type: string
  2066                              example: "1159558"
  2067                            block_parts:
  2068                              type: string
  2069                              example: "4786"
  2070                          type: object
  2071                      type: object
  2072            type: object
  2073  
  2074      ConsensusStateResponse:
  2075        type: object
  2076        required:
  2077          - "jsonrpc"
  2078          - "id"
  2079          - "result"
  2080        properties:
  2081          jsonrpc:
  2082            type: string
  2083            example: "2.0"
  2084          id:
  2085            type: integer
  2086            example: 0
  2087          result:
  2088            required:
  2089              - "round_state"
  2090            properties:
  2091              round_state:
  2092                required:
  2093                  - "height/round/step"
  2094                  - "start_time"
  2095                  - "proposal_block_hash"
  2096                  - "locked_block_hash"
  2097                  - "valid_block_hash"
  2098                  - "height_vote_set"
  2099                  - "proposer"
  2100                properties:
  2101                  height/round/step:
  2102                    type: string
  2103                    example: "1262197/0/8"
  2104                  start_time:
  2105                    type: string
  2106                    example: "2019-08-01T11:52:38.962730289Z"
  2107                  proposal_block_hash:
  2108                    type: string
  2109                    example: "634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009"
  2110                  locked_block_hash:
  2111                    type: string
  2112                    example: "634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009"
  2113                  valid_block_hash:
  2114                    type: string
  2115                    example: "634ADAF1F402663BEC2ABC340ECE8B4B45AA906FA603272ACC5F5EED3097E009"
  2116                  height_vote_set:
  2117                    type: array
  2118                    items:
  2119                      type: object
  2120                      properties:
  2121                        round:
  2122                          type: integer
  2123                          example: 0
  2124                        prevotes:
  2125                          type: array
  2126                          items:
  2127                            type: string
  2128                          example:
  2129                            - "Vote{0:000001E443FD 1262197/00/1(Prevote) 634ADAF1F402 7BB974E1BA40 @ 2019-08-01T11:52:35.513572509Z}"
  2130                            - "nil-Vote"
  2131                        prevotes_bit_array:
  2132                          type: string
  2133                          example: "BA{100:xxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx} 169753436/170151262 = 1.00"
  2134                        precommits:
  2135                          type: array
  2136                          items:
  2137                            type: string
  2138                          example:
  2139                            - "Vote{5:18C78D135C9D 1262197/00/2(Precommit) 634ADAF1F402 8B5EFFFEABCD @ 2019-08-01T11:52:36.25600005Z}"
  2140                            - "nil-Vote"
  2141                        precommits_bit_array:
  2142                          type: string
  2143                          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"
  2144                  proposer:
  2145                    type: object
  2146                    properties:
  2147                      address:
  2148                        type: string
  2149                        example: "D540AB022088612AC74B287D076DBFBC4A377A2E"
  2150                      index:
  2151                        type: integer
  2152                        example: 0
  2153                type: object
  2154            type: object
  2155  
  2156      ConsensusParamsResponse:
  2157        type: object
  2158        required:
  2159          - "jsonrpc"
  2160          - "id"
  2161          - "result"
  2162        properties:
  2163          jsonrpc:
  2164            type: string
  2165            example: "2.0"
  2166          id:
  2167            type: integer
  2168            example: 0
  2169          result:
  2170            type: object
  2171            required:
  2172              - "block_height"
  2173              - "consensus_params"
  2174            properties:
  2175              block_height:
  2176                type: string
  2177                example: "1"
  2178              consensus_params:
  2179                $ref: "#/components/schemas/ConsensusParams"
  2180  
  2181      NumUnconfirmedTransactionsResponse:
  2182        type: object
  2183        required:
  2184          - "jsonrpc"
  2185          - "id"
  2186          - "result"
  2187        properties:
  2188          jsonrpc:
  2189            type: string
  2190            example: "2.0"
  2191          id:
  2192            type: integer
  2193            example: 0
  2194          result:
  2195            required:
  2196              - "n_txs"
  2197              - "total"
  2198              - "total_bytes"
  2199            properties:
  2200              n_txs:
  2201                type: string
  2202                example: "31"
  2203              total:
  2204                type: string
  2205                example: "82"
  2206              total_bytes:
  2207                type: string
  2208                example: "19974"
  2209            #          txs:
  2210            #            type: array
  2211            #            nullable: true
  2212            #            items:
  2213            #              type: string
  2214            #              nullable: true
  2215            #            example:
  2216            #              - "gAPwYl3uCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUA75/FmYq9WymsOBJ0XSJ8yV8zmQKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhQbrvwbvlNiT+Yjr86G+YQNx7kRVgowjE1xDQoUjJyJG+WaWBwSiGannBRFdrbma+8SFK2m+1oxgILuQLO55n8mWfnbIzyPCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUQNGfkmhTNMis4j+dyMDIWXdIPiYKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhS8sL0D0wwgGCItQwVowak5YB38KRIUCg4KBXVhdG9tEgUxMDA1NBDoxRgaagom61rphyECn8x7emhhKdRCB2io7aS/6Cpuq5NbVqbODmqOT3jWw6kSQKUresk+d+Gw0BhjiggTsu8+1voW+VlDCQ1GRYnMaFOHXhyFv7BCLhFWxLxHSAYT8a5XqoMayosZf9mANKdXArA="
  2217            type: object
  2218  
  2219      UnconfirmedTransactionsResponse:
  2220        type: object
  2221        required:
  2222          - "jsonrpc"
  2223          - "id"
  2224          - "result"
  2225        properties:
  2226          jsonrpc:
  2227            type: string
  2228            example: "2.0"
  2229          id:
  2230            type: integer
  2231            example: 0
  2232          result:
  2233            required:
  2234              - "n_txs"
  2235              - "total"
  2236              - "total_bytes"
  2237              - "txs"
  2238            properties:
  2239              n_txs:
  2240                type: string
  2241                example: "82"
  2242              total:
  2243                type: string
  2244                example: "82"
  2245              total_bytes:
  2246                type: string
  2247                example: "19974"
  2248              txs:
  2249                type: array
  2250                nullable: true
  2251                items:
  2252                  type: string
  2253                  nullable: true
  2254                example:
  2255                  - "gAPwYl3uCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUA75/FmYq9WymsOBJ0XSJ8yV8zmQKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhQbrvwbvlNiT+Yjr86G+YQNx7kRVgowjE1xDQoUjJyJG+WaWBwSiGannBRFdrbma+8SFK2m+1oxgILuQLO55n8mWfnbIzyPCjCMTXENChSMnIkb5ZpYHBKIZqecFEV2tuZr7xIUQNGfkmhTNMis4j+dyMDIWXdIPiYKMIxNcQ0KFIyciRvlmlgcEohmp5wURXa25mvvEhS8sL0D0wwgGCItQwVowak5YB38KRIUCg4KBXVhdG9tEgUxMDA1NBDoxRgaagom61rphyECn8x7emhhKdRCB2io7aS/6Cpuq5NbVqbODmqOT3jWw6kSQKUresk+d+Gw0BhjiggTsu8+1voW+VlDCQ1GRYnMaFOHXhyFv7BCLhFWxLxHSAYT8a5XqoMayosZf9mANKdXArA="
  2256            type: object
  2257  
  2258      TxSearchResponse:
  2259        type: object
  2260        required:
  2261          - "jsonrpc"
  2262          - "id"
  2263          - "result"
  2264        properties:
  2265          jsonrpc:
  2266            type: string
  2267            example: "2.0"
  2268          id:
  2269            type: integer
  2270            example: 0
  2271          result:
  2272            required:
  2273              - "txs"
  2274              - "total_count"
  2275            properties:
  2276              txs:
  2277                type: array
  2278                items:
  2279                  type: object
  2280                  properties:
  2281                    hash:
  2282                      type: string
  2283                      example: "D70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
  2284                    height:
  2285                      type: string
  2286                      example: "1000"
  2287                    index:
  2288                      type: integer
  2289                      example: 0
  2290                    tx_result:
  2291                      required:
  2292                        - "log"
  2293                        - "gas_wanted"
  2294                        - "gas_used"
  2295                        - "tags"
  2296                      properties:
  2297                        log:
  2298                          type: string
  2299                          example: '[{"msg_index":"0","success":true,"log":""}]'
  2300                        gas_wanted:
  2301                          type: string
  2302                          example: "200000"
  2303                        gas_used:
  2304                          type: string
  2305                          example: "28596"
  2306                        tags:
  2307                          $ref: "#/components/schemas/Event"
  2308                      type: object
  2309                    tx:
  2310                      type: string
  2311                      example: "5wHwYl3uCkaoo2GaChQmSIu8hxpJxLcCuIi8fiHN4TMwrRIU/Af1cEG7Rcs/6LjTl7YjRSymJfYaFAoFdWF0b20SCzE0OTk5OTk1MDAwEhMKDQoFdWF0b20SBDUwMDAQwJoMGmoKJuta6YchAwswBShaB1wkZBctLIhYqBC3JrAI28XGzxP+rVEticGEEkAc+khTkKL9CDE47aDvjEHvUNt+izJfT4KVF2v2JkC+bmlH9K08q3PqHeMI9Z5up+XMusnTqlP985KF+SI5J3ZOIhhNYWRlIGJ5IENpcmNsZSB3aXRoIGxvdmU="
  2312                    proof:
  2313                      required:
  2314                        - "RootHash"
  2315                        - "Data"
  2316                        - "Proof"
  2317                      properties:
  2318                        RootHash:
  2319                          type: string
  2320                          example: "72FE6BF6D4109105357AECE0A82E99D0F6288854D16D8767C5E72C57F876A14D"
  2321                        Data:
  2322                          type: string
  2323                          example: "5wHwYl3uCkaoo2GaChQmSIu8hxpJxLcCuIi8fiHN4TMwrRIU/Af1cEG7Rcs/6LjTl7YjRSymJfYaFAoFdWF0b20SCzE0OTk5OTk1MDAwEhMKDQoFdWF0b20SBDUwMDAQwJoMGmoKJuta6YchAwswBShaB1wkZBctLIhYqBC3JrAI28XGzxP+rVEticGEEkAc+khTkKL9CDE47aDvjEHvUNt+izJfT4KVF2v2JkC+bmlH9K08q3PqHeMI9Z5up+XMusnTqlP985KF+SI5J3ZOIhhNYWRlIGJ5IENpcmNsZSB3aXRoIGxvdmU="
  2324                        Proof:
  2325                          required:
  2326                            - "total"
  2327                            - "index"
  2328                            - "leaf_hash"
  2329                            - "aunts"
  2330                          properties:
  2331                            total:
  2332                              type: string
  2333                              example: "2"
  2334                            index:
  2335                              type: string
  2336                              example: "0"
  2337                            leaf_hash:
  2338                              type: string
  2339                              example: "eoJxKCzF3m72Xiwb/Q43vJ37/2Sx8sfNS9JKJohlsYI="
  2340                            aunts:
  2341                              type: array
  2342                              items:
  2343                                type: string
  2344                              example:
  2345                                - "eWb+HG/eMmukrQj4vNGyFYb3nKQncAWacq4HF5eFzDY="
  2346                          type: object
  2347                      type: object
  2348              total_count:
  2349                type: string
  2350                example: "2"
  2351            type: object
  2352  
  2353      TxResponse:
  2354        type: object
  2355        required:
  2356          - "jsonrpc"
  2357          - "id"
  2358          - "result"
  2359        properties:
  2360          jsonrpc:
  2361            type: string
  2362            example: "2.0"
  2363          id:
  2364            type: integer
  2365            example: 0
  2366          result:
  2367            required:
  2368              - "hash"
  2369              - "height"
  2370              - "index"
  2371              - "tx_result"
  2372              - "tx"
  2373            properties:
  2374              hash:
  2375                type: string
  2376                example: "D70952032620CC4E2737EB8AC379806359D8E0B17B0488F627997A0B043ABDED"
  2377              height:
  2378                type: string
  2379                example: "1000"
  2380              index:
  2381                type: integer
  2382                example: 0
  2383              tx_result:
  2384                required:
  2385                  - "log"
  2386                  - "gas_wanted"
  2387                  - "gas_used"
  2388                  - "tags"
  2389                properties:
  2390                  log:
  2391                    type: string
  2392                    example: '[{"msg_index":"0","success":true,"log":""}]'
  2393                  gas_wanted:
  2394                    type: string
  2395                    example: "200000"
  2396                  gas_used:
  2397                    type: string
  2398                    example: "28596"
  2399                  tags:
  2400                    type: array
  2401                    items:
  2402                      $ref: "#/components/schemas/Event"
  2403                type: object
  2404              tx:
  2405                type: string
  2406                example: "5wHwYl3uCkaoo2GaChQmSIu8hxpJxLcCuIi8fiHN4TMwrRIU/Af1cEG7Rcs/6LjTl7YjRSymJfYaFAoFdWF0b20SCzE0OTk5OTk1MDAwEhMKDQoFdWF0b20SBDUwMDAQwJoMGmoKJuta6YchAwswBShaB1wkZBctLIhYqBC3JrAI28XGzxP+rVEticGEEkAc+khTkKL9CDE47aDvjEHvUNt+izJfT4KVF2v2JkC+bmlH9K08q3PqHeMI9Z5up+XMusnTqlP985KF+SI5J3ZOIhhNYWRlIGJ5IENpcmNsZSB3aXRoIGxvdmU="
  2407            type: object
  2408  
  2409      ABCIInfoResponse:
  2410        type: object
  2411        required:
  2412          - "jsonrpc"
  2413          - "id"
  2414        properties:
  2415          jsonrpc:
  2416            type: string
  2417            example: "2.0"
  2418          id:
  2419            type: integer
  2420            example: 0
  2421          result:
  2422            required:
  2423              - "response"
  2424            properties:
  2425              response:
  2426                required:
  2427                  - "data"
  2428                  - "app_version"
  2429                  - "version"
  2430                properties:
  2431                  data:
  2432                    type: string
  2433                    example: '{"size":0}'
  2434                  version:
  2435                    type: string
  2436                    example: "0.16.1"
  2437                  app_version:
  2438                    type: string
  2439                    example: "1314126"
  2440                type: object
  2441            type: object
  2442  
  2443      ABCIQueryResponse:
  2444        type: object
  2445        required:
  2446          - "error"
  2447          - "result"
  2448          - "id"
  2449          - "jsonrpc"
  2450        properties:
  2451          error:
  2452            type: string
  2453            example: ""
  2454          result:
  2455            required:
  2456              - "response"
  2457            properties:
  2458              response:
  2459                required:
  2460                  - "log"
  2461                  - "height"
  2462                  - "proof"
  2463                  - "value"
  2464                  - "key"
  2465                  - "index"
  2466                  - "code"
  2467                properties:
  2468                  log:
  2469                    type: string
  2470                    example: "exists"
  2471                  height:
  2472                    type: string
  2473                    example: "0"
  2474                  proof:
  2475                    type: string
  2476                    example: "010114FED0DAD959F36091AD761C922ABA3CBF1D8349990101020103011406AA2262E2F448242DF2C2607C3CDC705313EE3B0001149D16177BC71E445476174622EA559715C293740C"
  2477                  value:
  2478                    type: string
  2479                    example: "61626364"
  2480                  key:
  2481                    type: string
  2482                    example: "61626364"
  2483                  index:
  2484                    type: string
  2485                    example: "-1"
  2486                  code:
  2487                    type: string
  2488                    example: "0"
  2489                type: object
  2490            type: object
  2491          id:
  2492            type: integer
  2493            example: 0
  2494          jsonrpc:
  2495            type: string
  2496            example: "2.0"
  2497  
  2498      BroadcastEvidenceResponse:
  2499        type: object
  2500        required:
  2501          - "id"
  2502          - "jsonrpc"
  2503        properties:
  2504          error:
  2505            type: string
  2506            example: ""
  2507          result:
  2508            type: string
  2509            example: ""
  2510          id:
  2511            type: integer
  2512            example: 0
  2513          jsonrpc:
  2514            type: string
  2515            example: "2.0"
  2516  
  2517      BroadcastTxCommitResponse:
  2518        type: object
  2519        required:
  2520          - "error"
  2521          - "result"
  2522          - "id"
  2523          - "jsonrpc"
  2524        properties:
  2525          error:
  2526            type: string
  2527            example: ""
  2528          result:
  2529            required:
  2530              - "height"
  2531              - "hash"
  2532              - "deliver_tx"
  2533              - "check_tx"
  2534            properties:
  2535              height:
  2536                type: string
  2537                example: "26682"
  2538              hash:
  2539                type: string
  2540                example: "75CA0F856A4DA078FC4911580360E70CEFB2EBEE"
  2541              deliver_tx:
  2542                required:
  2543                  - "log"
  2544                  - "data"
  2545                  - "code"
  2546                properties:
  2547                  log:
  2548                    type: string
  2549                    example: ""
  2550                  data:
  2551                    type: string
  2552                    example: ""
  2553                  code:
  2554                    type: string
  2555                    example: "0"
  2556                type: object
  2557              check_tx:
  2558                required:
  2559                  - "log"
  2560                  - "data"
  2561                  - "code"
  2562                properties:
  2563                  log:
  2564                    type: string
  2565                    example: ""
  2566                  data:
  2567                    type: string
  2568                    example: ""
  2569                  code:
  2570                    type: string
  2571                    example: "0"
  2572                type: object
  2573            type: object
  2574          id:
  2575            type: integer
  2576            example: 0
  2577          jsonrpc:
  2578            type: string
  2579            example: "2.0"
  2580  
  2581      CheckTxResponse:
  2582        type: object
  2583        required:
  2584          - "error"
  2585          - "result"
  2586          - "id"
  2587          - "jsonrpc"
  2588        properties:
  2589          error:
  2590            type: string
  2591            example: ""
  2592          result:
  2593            required:
  2594              - "log"
  2595              - "data"
  2596              - "code"
  2597            properties:
  2598              code:
  2599                type: string
  2600                example: "0"
  2601              data:
  2602                type: string
  2603                example: ""
  2604              log:
  2605                type: string
  2606                example: ""
  2607              info:
  2608                type: string
  2609                example: ""
  2610              gas_wanted:
  2611                type: string
  2612                example: "1"
  2613              gas_used:
  2614                type: string
  2615                example: "0"
  2616              events:
  2617                type: array
  2618                nullable: true
  2619                items:
  2620                  type: object
  2621                  properties:
  2622                    type:
  2623                      type: string
  2624                      example: "app"
  2625                    attributes:
  2626                      type: array
  2627                      nullable: false
  2628                      items:
  2629                        $ref: "#/components/schemas/Event"
  2630              codespace:
  2631                type: string
  2632                example: "bank"
  2633            type: object
  2634          id:
  2635            type: integer
  2636            example: 0
  2637          jsonrpc:
  2638            type: string
  2639            example: "2.0"
  2640  
  2641      BroadcastTxResponse:
  2642        type: object
  2643        required:
  2644          - "jsonrpc"
  2645          - "id"
  2646          - "result"
  2647          - "error"
  2648        properties:
  2649          jsonrpc:
  2650            type: string
  2651            example: "2.0"
  2652          id:
  2653            type: integer
  2654            example: 0
  2655          result:
  2656            required:
  2657              - "code"
  2658              - "data"
  2659              - "log"
  2660              - "hash"
  2661            properties:
  2662              code:
  2663                type: string
  2664                example: "0"
  2665              data:
  2666                type: string
  2667                example: ""
  2668              log:
  2669                type: string
  2670                example: ""
  2671              codespace:
  2672                type: string
  2673                example: "ibc"
  2674              hash:
  2675                type: string
  2676                example: "0D33F2F03A5234F38706E43004489E061AC40A2E"
  2677            type: object
  2678          error:
  2679            type: string
  2680            example: ""
  2681  
  2682      dialResp:
  2683        type: object
  2684        properties:
  2685          Log:
  2686            type: string
  2687            example: "Dialing seeds in progress. See /net_info for details"
  2688  
  2689      ###### Reuseable types ######
  2690  
  2691      # Validator type with proposer prioirty
  2692      ValidatorPriority:
  2693        type: object
  2694        properties:
  2695          address:
  2696            type: string
  2697            example: "000001E443FD237E4B616E2FA69DF4EE3D49A94F"
  2698          pub_key:
  2699            required:
  2700              - "type"
  2701              - "value"
  2702            properties:
  2703              type:
  2704                type: string
  2705                example: "tendermint/PubKeyEd25519"
  2706              value:
  2707                type: string
  2708                example: "9tK9IT+FPdf2qm+5c2qaxi10sWP+3erWTKgftn2PaQM="
  2709            type: object
  2710          voting_power:
  2711            type: string
  2712            example: "239727"
  2713          proposer_priority:
  2714            type: string
  2715            example: "-11896414"
  2716  
  2717      # Stripped down validator
  2718      Validator:
  2719        type: object
  2720        properties:
  2721          pub_key:
  2722            $ref: "#/components/schemas/PubKey"
  2723          voting_power:
  2724            type: integer
  2725          address:
  2726            type: string
  2727  
  2728      # Consensus Params
  2729      ConsensusParams:
  2730        type: object
  2731        nullable: true
  2732        required:
  2733          - "block"
  2734          - "evidence"
  2735          - "validator"
  2736        properties:
  2737          block:
  2738            type: object
  2739            required:
  2740              - "max_bytes"
  2741              - "max_gas"
  2742              - "time_iota_ms"
  2743            properties:
  2744              max_bytes:
  2745                type: string
  2746                example: "22020096"
  2747              max_gas:
  2748                type: string
  2749                example: "1000"
  2750              time_iota_ms:
  2751                type: string
  2752                example: "1000"
  2753          evidence:
  2754            type: object
  2755            required:
  2756              - "max_age"
  2757            properties:
  2758              max_age:
  2759                type: string
  2760                example: "100000"
  2761          validator:
  2762            type: object
  2763            required:
  2764              - "pub_key_types"
  2765            properties:
  2766              pub_key_types:
  2767                type: array
  2768                items:
  2769                  type: string
  2770                example:
  2771                  - "ed25519"
  2772  
  2773      # Events in tendermint
  2774      Event:
  2775        type: object
  2776        properties:
  2777          key:
  2778            type: string
  2779            example: "YWN0aW9u"
  2780          value:
  2781            type: string
  2782            example: "c2VuZA=="
  2783          index:
  2784            type: boolean
  2785            example: false
  2786  
  2787      # Block Header
  2788      BlockHeader:
  2789        required:
  2790          - "version"
  2791          - "chain_id"
  2792          - "height"
  2793          - "time"
  2794          - "last_block_id"
  2795          - "last_commit_hash"
  2796          - "data_hash"
  2797          - "validators_hash"
  2798          - "next_validators_hash"
  2799          - "consensus_hash"
  2800          - "app_hash"
  2801          - "last_results_hash"
  2802          - "evidence_hash"
  2803          - "proposer_address"
  2804        properties:
  2805          version:
  2806            required:
  2807              - "block"
  2808              - "app"
  2809            properties:
  2810              block:
  2811                type: string
  2812                example: "10"
  2813              app:
  2814                type: string
  2815                example: "0"
  2816            type: object
  2817          chain_id:
  2818            type: string
  2819            example: "cosmoshub-2"
  2820          height:
  2821            type: string
  2822            example: "12"
  2823          time:
  2824            type: string
  2825            example: "2019-04-22T17:01:51.701356223Z"
  2826          last_block_id:
  2827            $ref: "#/components/schemas/BlockID"
  2828          last_commit_hash:
  2829            type: string
  2830            example: "21B9BC845AD2CB2C4193CDD17BFC506F1EBE5A7402E84AD96E64171287A34812"
  2831          data_hash:
  2832            type: string
  2833            example: "970886F99E77ED0D60DA8FCE0447C2676E59F2F77302B0C4AA10E1D02F18EF73"
  2834          validators_hash:
  2835            type: string
  2836            example: "D658BFD100CA8025CFD3BECFE86194322731D387286FBD26E059115FD5F2BCA0"
  2837          next_validators_hash:
  2838            type: string
  2839            example: "D658BFD100CA8025CFD3BECFE86194322731D387286FBD26E059115FD5F2BCA0"
  2840          consensus_hash:
  2841            type: string
  2842            example: "0F2908883A105C793B74495EB7D6DF2EEA479ED7FC9349206A65CB0F9987A0B8"
  2843          app_hash:
  2844            type: string
  2845            example: "223BF64D4A01074DC523A80E76B9BBC786C791FB0A1893AC5B14866356FCFD6C"
  2846          last_results_hash:
  2847            type: string
  2848            example: ""
  2849          evidence_hash:
  2850            type: string
  2851            example: ""
  2852          proposer_address:
  2853            type: string
  2854            example: "D540AB022088612AC74B287D076DBFBC4A377A2E"
  2855        type: object
  2856  
  2857      BlockID:
  2858        required:
  2859          - "hash"
  2860          - "parts"
  2861        properties:
  2862          hash:
  2863            type: string
  2864            example: "112BC173FD838FB68EB43476816CD7B4C6661B6884A9E357B417EE957E1CF8F7"
  2865          parts:
  2866            required:
  2867              - "total"
  2868              - "hash"
  2869            properties:
  2870              total:
  2871                type: integer
  2872                example: 1
  2873              hash:
  2874                type: string
  2875                example: "38D4B26B5B725C4F13571EFE022C030390E4C33C8CF6F88EDD142EA769642DBD"
  2876            type: object