Akash Network Staking API

The Staking API from Akash Network — 14 operation(s) for staking.

OpenAPI Specification

akash-staking-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: AKASH - gRPC Gateway docs Addresses Staking API
  description: A REST interface for state queries
  version: 1.0.0
tags:
- name: Staking
paths:
  /staking/delegators/{delegatorAddr}/delegations:
    parameters:
    - in: path
      name: delegatorAddr
      description: Bech32 AccAddress of Delegator
      required: true
      type: string
      x-example: cosmos16xyempempp92x9hyzz9wrgf94r6j9h5f06pxxv
    get:
      deprecated: true
      summary: Get all delegations from a delegator
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              type: object
              properties:
                delegator_address:
                  type: string
                validator_address:
                  type: string
                shares:
                  type: string
                balance:
                  type: object
                  properties:
                    denom:
                      type: string
                      example: stake
                    amount:
                      type: string
                      example: '50'
        '400':
          description: Invalid delegator address
        '500':
          description: Internal Server Error
    post:
      summary: Submit delegation
      parameters:
      - in: body
        name: delegation
        description: Delegate an amount of liquid coins to a validator
        schema:
          type: object
          properties:
            base_req:
              type: object
              properties:
                from:
                  type: string
                  example: cosmos1g9ahr6xhht5rmqven628nklxluzyv8z9jqjcmc
                  description: Sender address or Keybase name to generate a transaction
                memo:
                  type: string
                  example: Sent via Cosmos Voyager 🚀
                chain_id:
                  type: string
                  example: Cosmos-Hub
                account_number:
                  type: string
                  example: '0'
                sequence:
                  type: string
                  example: '1'
                gas:
                  type: string
                  example: '200000'
                gas_adjustment:
                  type: string
                  example: '1.2'
                fees:
                  type: array
                  items:
                    type: object
                    properties:
                      denom:
                        type: string
                        example: stake
                      amount:
                        type: string
                        example: '50'
                simulate:
                  type: boolean
                  example: false
                  description: Estimate gas for a transaction (cannot be used in conjunction with generate_only)
            delegator_address:
              type: string
              description: bech32 encoded address
              example: cosmos1depk54cuajgkzea6zpgkq36tnjwdzv4afc3d27
            validator_address:
              type: string
              description: bech32 encoded address
              example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
            amount:
              type: object
              properties:
                denom:
                  type: string
                  example: stake
                amount:
                  type: string
                  example: '50'
      tags:
      - Staking
      consumes:
      - application/json
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: object
            properties:
              msg:
                type: array
                items:
                  type: string
              fee:
                type: object
                properties:
                  gas:
                    type: string
                  amount:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                          example: stake
                        amount:
                          type: string
                          example: '50'
              memo:
                type: string
              signature:
                type: object
                properties:
                  signature:
                    type: string
                    example: MEUCIQD02fsDPra8MtbRsyB1w7bqTM55Wu138zQbFcWx4+CFyAIge5WNPfKIuvzBZ69MyqHsqD8S1IwiEp+iUb6VSdtlpgY=
                  pub_key:
                    type: object
                    properties:
                      type:
                        type: string
                        example: tendermint/PubKeySecp256k1
                      value:
                        type: string
                        example: Avz04VhtKJh8ACCVzlI8aTosGy0ikFXKIVHQ3jKMrosH
                  account_number:
                    type: string
                    example: '0'
                  sequence:
                    type: string
                    example: '0'
        '400':
          description: Invalid delegator address or delegation request body
        '401':
          description: Key password is wrong
        '500':
          description: Internal Server Error
  /staking/delegators/{delegatorAddr}/delegations/{validatorAddr}:
    parameters:
    - in: path
      name: delegatorAddr
      description: Bech32 AccAddress of Delegator
      required: true
      type: string
      x-example: cosmos16xyempempp92x9hyzz9wrgf94r6j9h5f06pxxv
    - in: path
      name: validatorAddr
      description: Bech32 OperatorAddress of validator
      required: true
      type: string
      x-example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
    get:
      deprecated: true
      summary: Query the current delegation between a delegator and a validator
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: object
            properties:
              delegator_address:
                type: string
              validator_address:
                type: string
              shares:
                type: string
              balance:
                type: object
                properties:
                  denom:
                    type: string
                    example: stake
                  amount:
                    type: string
                    example: '50'
        '400':
          description: Invalid delegator address or validator address
        '500':
          description: Internal Server Error
  /staking/delegators/{delegatorAddr}/unbonding_delegations:
    parameters:
    - in: path
      name: delegatorAddr
      description: Bech32 AccAddress of Delegator
      required: true
      type: string
      x-example: cosmos16xyempempp92x9hyzz9wrgf94r6j9h5f06pxxv
    get:
      deprecated: true
      summary: Get all unbonding delegations from a delegator
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              type: object
              properties:
                delegator_address:
                  type: string
                validator_address:
                  type: string
                initial_balance:
                  type: string
                balance:
                  type: string
                creation_height:
                  type: integer
                min_time:
                  type: integer
        '400':
          description: Invalid delegator address
        '500':
          description: Internal Server Error
    post:
      summary: Submit an unbonding delegation
      parameters:
      - in: body
        name: delegation
        description: Unbond an amount of bonded shares from a validator
        schema:
          type: object
          properties:
            base_req:
              type: object
              properties:
                from:
                  type: string
                  example: cosmos1g9ahr6xhht5rmqven628nklxluzyv8z9jqjcmc
                  description: Sender address or Keybase name to generate a transaction
                memo:
                  type: string
                  example: Sent via Cosmos Voyager 🚀
                chain_id:
                  type: string
                  example: Cosmos-Hub
                account_number:
                  type: string
                  example: '0'
                sequence:
                  type: string
                  example: '1'
                gas:
                  type: string
                  example: '200000'
                gas_adjustment:
                  type: string
                  example: '1.2'
                fees:
                  type: array
                  items:
                    type: object
                    properties:
                      denom:
                        type: string
                        example: stake
                      amount:
                        type: string
                        example: '50'
                simulate:
                  type: boolean
                  example: false
                  description: Estimate gas for a transaction (cannot be used in conjunction with generate_only)
            delegator_address:
              type: string
              description: bech32 encoded address
              example: cosmos1depk54cuajgkzea6zpgkq36tnjwdzv4afc3d27
            validator_address:
              type: string
              description: bech32 encoded address
              example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
            amount:
              type: object
              properties:
                denom:
                  type: string
                  example: stake
                amount:
                  type: string
                  example: '50'
      tags:
      - Staking
      consumes:
      - application/json
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: object
            properties:
              msg:
                type: array
                items:
                  type: string
              fee:
                type: object
                properties:
                  gas:
                    type: string
                  amount:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                          example: stake
                        amount:
                          type: string
                          example: '50'
              memo:
                type: string
              signature:
                type: object
                properties:
                  signature:
                    type: string
                    example: MEUCIQD02fsDPra8MtbRsyB1w7bqTM55Wu138zQbFcWx4+CFyAIge5WNPfKIuvzBZ69MyqHsqD8S1IwiEp+iUb6VSdtlpgY=
                  pub_key:
                    type: object
                    properties:
                      type:
                        type: string
                        example: tendermint/PubKeySecp256k1
                      value:
                        type: string
                        example: Avz04VhtKJh8ACCVzlI8aTosGy0ikFXKIVHQ3jKMrosH
                  account_number:
                    type: string
                    example: '0'
                  sequence:
                    type: string
                    example: '0'
        '400':
          description: Invalid delegator address or unbonding delegation request body
        '401':
          description: Key password is wrong
        '500':
          description: Internal Server Error
  /staking/delegators/{delegatorAddr}/unbonding_delegations/{validatorAddr}:
    parameters:
    - in: path
      name: delegatorAddr
      description: Bech32 AccAddress of Delegator
      required: true
      type: string
      x-example: cosmos16xyempempp92x9hyzz9wrgf94r6j9h5f06pxxv
    - in: path
      name: validatorAddr
      description: Bech32 OperatorAddress of validator
      required: true
      type: string
      x-example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
    get:
      deprecated: true
      summary: Query all unbonding delegations between a delegator and a validator
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: object
            properties:
              delegator_address:
                type: string
              validator_address:
                type: string
              entries:
                type: array
                items:
                  type: object
                  properties:
                    initial_balance:
                      type: string
                    balance:
                      type: string
                    creation_height:
                      type: string
                    min_time:
                      type: string
        '400':
          description: Invalid delegator address or validator address
        '500':
          description: Internal Server Error
  /staking/redelegations:
    parameters:
    - in: query
      name: delegator
      description: Bech32 AccAddress of Delegator
      required: false
      type: string
    - in: query
      name: validator_from
      description: Bech32 ValAddress of SrcValidator
      required: false
      type: string
    - in: query
      name: validator_to
      description: Bech32 ValAddress of DstValidator
      required: false
      type: string
    get:
      deprecated: true
      summary: Get all redelegations (filter by query params)
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              $ref: '#/definitions/Redelegation'
        '500':
          description: Internal Server Error
  /staking/delegators/{delegatorAddr}/redelegations:
    parameters:
    - in: path
      name: delegatorAddr
      description: Bech32 AccAddress of Delegator
      required: true
      type: string
      x-example: cosmos16xyempempp92x9hyzz9wrgf94r6j9h5f06pxxv
    post:
      deprecated: true
      summary: Submit a redelegation
      parameters:
      - in: body
        name: delegation
        description: The sender and tx information
        schema:
          type: object
          properties:
            base_req:
              type: object
              properties:
                from:
                  type: string
                  example: cosmos1g9ahr6xhht5rmqven628nklxluzyv8z9jqjcmc
                  description: Sender address or Keybase name to generate a transaction
                memo:
                  type: string
                  example: Sent via Cosmos Voyager 🚀
                chain_id:
                  type: string
                  example: Cosmos-Hub
                account_number:
                  type: string
                  example: '0'
                sequence:
                  type: string
                  example: '1'
                gas:
                  type: string
                  example: '200000'
                gas_adjustment:
                  type: string
                  example: '1.2'
                fees:
                  type: array
                  items:
                    type: object
                    properties:
                      denom:
                        type: string
                        example: stake
                      amount:
                        type: string
                        example: '50'
                simulate:
                  type: boolean
                  example: false
                  description: Estimate gas for a transaction (cannot be used in conjunction with generate_only)
            delegator_address:
              type: string
              description: bech32 encoded address
              example: cosmos1depk54cuajgkzea6zpgkq36tnjwdzv4afc3d27
            validator_src_addressess:
              type: string
              description: bech32 encoded address
              example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
            validator_dst_address:
              type: string
              description: bech32 encoded address
              example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
            shares:
              type: string
              example: '100'
      tags:
      - Staking
      consumes:
      - application/json
      produces:
      - application/json
      responses:
        '200':
          description: Tx was succesfully generated
          schema:
            type: object
            properties:
              msg:
                type: array
                items:
                  type: string
              fee:
                type: object
                properties:
                  gas:
                    type: string
                  amount:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                          example: stake
                        amount:
                          type: string
                          example: '50'
              memo:
                type: string
              signature:
                type: object
                properties:
                  signature:
                    type: string
                    example: MEUCIQD02fsDPra8MtbRsyB1w7bqTM55Wu138zQbFcWx4+CFyAIge5WNPfKIuvzBZ69MyqHsqD8S1IwiEp+iUb6VSdtlpgY=
                  pub_key:
                    type: object
                    properties:
                      type:
                        type: string
                        example: tendermint/PubKeySecp256k1
                      value:
                        type: string
                        example: Avz04VhtKJh8ACCVzlI8aTosGy0ikFXKIVHQ3jKMrosH
                  account_number:
                    type: string
                    example: '0'
                  sequence:
                    type: string
                    example: '0'
        '400':
          description: Invalid delegator address or redelegation request body
        '500':
          description: Internal Server Error
  /staking/delegators/{delegatorAddr}/validators:
    parameters:
    - in: path
      name: delegatorAddr
      description: Bech32 AccAddress of Delegator
      required: true
      type: string
      x-example: cosmos16xyempempp92x9hyzz9wrgf94r6j9h5f06pxxv
    get:
      deprecated: true
      summary: Query all validators that a delegator is bonded to
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              type: object
              properties:
                operator_address:
                  type: string
                  description: bech32 encoded address
                  example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
                consensus_pubkey:
                  type: string
                  example: cosmosvalconspub1zcjduepq0vu2zgkgk49efa0nqwzndanq5m4c7pa3u4apz4g2r9gspqg6g9cs3k9cuf
                jailed:
                  type: boolean
                status:
                  type: integer
                tokens:
                  type: string
                delegator_shares:
                  type: string
                description:
                  type: object
                  properties:
                    moniker:
                      type: string
                    identity:
                      type: string
                    website:
                      type: string
                    security_contact:
                      type: string
                    details:
                      type: string
                bond_height:
                  type: string
                  example: '0'
                bond_intra_tx_counter:
                  type: integer
                  example: 0
                unbonding_height:
                  type: string
                  example: '0'
                unbonding_time:
                  type: string
                  example: '1970-01-01T00:00:00Z'
                commission:
                  type: object
                  properties:
                    rate:
                      type: string
                      example: '0'
                    max_rate:
                      type: string
                      example: '0'
                    max_change_rate:
                      type: string
                      example: '0'
                    update_time:
                      type: string
                      example: '1970-01-01T00:00:00Z'
        '400':
          description: Invalid delegator address
        '500':
          description: Internal Server Error
  /staking/delegators/{delegatorAddr}/validators/{validatorAddr}:
    parameters:
    - in: path
      name: delegatorAddr
      description: Bech32 AccAddress of Delegator
      required: true
      type: string
      x-example: cosmos16xyempempp92x9hyzz9wrgf94r6j9h5f06pxxv
    - in: path
      name: validatorAddr
      description: Bech32 ValAddress of Delegator
      required: true
      type: string
      x-example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
    get:
      deprecated: true
      summary: Query a validator that a delegator is bonded to
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: object
            properties:
              operator_address:
                type: string
                description: bech32 encoded address
                example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
              consensus_pubkey:
                type: string
                example: cosmosvalconspub1zcjduepq0vu2zgkgk49efa0nqwzndanq5m4c7pa3u4apz4g2r9gspqg6g9cs3k9cuf
              jailed:
                type: boolean
              status:
                type: integer
              tokens:
                type: string
              delegator_shares:
                type: string
              description:
                type: object
                properties:
                  moniker:
                    type: string
                  identity:
                    type: string
                  website:
                    type: string
                  security_contact:
                    type: string
                  details:
                    type: string
              bond_height:
                type: string
                example: '0'
              bond_intra_tx_counter:
                type: integer
                example: 0
              unbonding_height:
                type: string
                example: '0'
              unbonding_time:
                type: string
                example: '1970-01-01T00:00:00Z'
              commission:
                type: object
                properties:
                  rate:
                    type: string
                    example: '0'
                  max_rate:
                    type: string
                    example: '0'
                  max_change_rate:
                    type: string
                    example: '0'
                  update_time:
                    type: string
                    example: '1970-01-01T00:00:00Z'
        '400':
          description: Invalid delegator address or validator address
        '500':
          description: Internal Server Error
  /staking/validators:
    get:
      deprecated: true
      summary: Get all validator candidates. By default it returns only the bonded validators.
      parameters:
      - in: query
        name: status
        type: string
        description: The validator bond status. Must be either 'bonded', 'unbonded', or 'unbonding'.
        x-example: bonded
      - in: query
        name: page
        description: The page number.
        type: integer
        x-example: 1
      - in: query
        name: limit
        description: The maximum number of items per page.
        type: integer
        x-example: 1
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              type: object
              properties:
                operator_address:
                  type: string
                  description: bech32 encoded address
                  example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
                consensus_pubkey:
                  type: string
                  example: cosmosvalconspub1zcjduepq0vu2zgkgk49efa0nqwzndanq5m4c7pa3u4apz4g2r9gspqg6g9cs3k9cuf
                jailed:
                  type: boolean
                status:
                  type: integer
                tokens:
                  type: string
                delegator_shares:
                  type: string
                description:
                  type: object
                  properties:
                    moniker:
                      type: string
                    identity:
                      type: string
                    website:
                      type: string
                    security_contact:
                      type: string
                    details:
                      type: string
                bond_height:
                  type: string
                  example: '0'
                bond_intra_tx_counter:
                  type: integer
                  example: 0
                unbonding_height:
                  type: string
                  example: '0'
                unbonding_time:
                  type: string
                  example: '1970-01-01T00:00:00Z'
                commission:
                  type: object
                  properties:
                    rate:
                      type: string
                      example: '0'
                    max_rate:
                      type: string
                      example: '0'
                    max_change_rate:
                      type: string
                      example: '0'
                    update_time:
                      type: string
                      example: '1970-01-01T00:00:00Z'
        '500':
          description: Internal Server Error
  /staking/validators/{validatorAddr}:
    parameters:
    - in: path
      name: validatorAddr
      description: Bech32 OperatorAddress of validator
      required: true
      type: string
      x-example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
    get:
      deprecated: true
      summary: Query the information from a single validator
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: object
            properties:
              operator_address:
                type: string
                description: bech32 encoded address
                example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
              consensus_pubkey:
                type: string
                example: cosmosvalconspub1zcjduepq0vu2zgkgk49efa0nqwzndanq5m4c7pa3u4apz4g2r9gspqg6g9cs3k9cuf
              jailed:
                type: boolean
              status:
                type: integer
              tokens:
                type: string
              delegator_shares:
                type: string
              description:
                type: object
                properties:
                  moniker:
                    type: string
                  identity:
                    type: string
                  website:
                    type: string
                  security_contact:
                    type: string
                  details:
                    type: string
              bond_height:
                type: string
                example: '0'
              bond_intra_tx_counter:
                type: integer
                example: 0
              unbonding_height:
                type: string
                example: '0'
              unbonding_time:
                type: string
                example: '1970-01-01T00:00:00Z'
              commission:
                type: object
                properties:
                  rate:
                    type: string
                    example: '0'
                  max_rate:
                    type: string
                    example: '0'
                  max_change_rate:
                    type: string
                    example: '0'
                  update_time:
                    type: string
                    example: '1970-01-01T00:00:00Z'
        '400':
          description: Invalid validator address
        '500':
          description: Internal Server Error
  /staking/validators/{validatorAddr}/delegations:
    parameters:
    - in: path
      name: validatorAddr
      description: Bech32 OperatorAddress of validator
      required: true
      type: string
      x-example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
    get:
      deprecated: true
      summary: Get all delegations from a validator
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              type: object
              properties:
                delegator_address:
                  type: string
                validator_address:
                  type: string
                shares:
                  type: string
                balance:
                  type: object
                  properties:
                    denom:
                      type: string
                      example: stake
                    amount:
                      type: string
                      example: '50'
        '400':
          description: Invalid validator address
        '500':
          description: Internal Server Error
  /staking/validators/{validatorAddr}/unbonding_delegations:
    parameters:
    - in: path
      name: validatorAddr
      description: Bech32 OperatorAddress of validator
      required: true
      type: string
      x-example: cosmosvaloper16xyempempp92x9hyzz9wrgf94r6j9h5f2w4n2l
    get:
      deprecated: true
      summary: Get all unbonding delegations from a validator
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              type: object
              properties:
                delegator_address:
                  type: string
                validator_address:
                  type: string
                initial_balance:
                  type: string
                balance:
                  type: string
                creation_height:
                  type: integer
                min_time:
                  type: integer
        '400':
          description: Invalid validator address
        '500':
          description: Internal Server Error
  /staking/pool:
    get:
      deprecated: true
      summary: Get the current state of the staking pool
      tags:
      - Staking
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            type: object
            properties:
              loose_tokens:
                type: string
              bonded_tokens:
                type: string
              inflation_last_time:
                type: string
              inflation:
                type: string
              date_last_commission_reset:
                type: string
              prev_bonded_shares:
                type: string
        '500':
          descrip

# --- truncated at 32 KB (33 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/akash/refs/heads/main/openapi/akash-staking-api-openapi.yml