Akash Blockchain REST API

Direct REST access to Akash blockchain state via gRPC-Gateway on port 1317. Exposes Cosmos SDK modules (auth, bank, staking, governance) and Akash-specific modules (deployment, market, provider, audit, certificate, escrow). Supports querying chain state and submitting transactions. Swagger UI available at /swagger/ on any running node.

OpenAPI Specification

akash-blockchain-rest-api.yaml Raw ↑
swagger: '2.0'
info:
  title: AKASH - gRPC Gateway docs
  description: A REST interface for state queries
  version: 1.0.0
paths:
  /akash/audit/v1beta3/audit/attributes/list:
    get:
      summary: |-
        AllProvidersAttributes queries all providers
        buf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE
        buf:lint:ignore RPC_RESPONSE_STANDARD_NAME
      operationId: AllProvidersAttributes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              providers:
                type: array
                items:
                  type: object
                  properties:
                    owner:
                      type: string
                    auditor:
                      type: string
                    attributes:
                      type: array
                      items:
                        type: object
                        properties:
                          key:
                            type: string
                          value:
                            type: string
                        title: Attribute represents key value pair
                  title: Provider stores owner auditor and attributes details
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    title: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QueryProvidersResponse is response type for the Query/Providers
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /akash/audit/v1beta3/audit/attributes/{auditor}/{owner}:
    get:
      summary: >-
        ProviderAuditorAttributes queries provider signed attributes by specific
        auditor

        buf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE

        buf:lint:ignore RPC_RESPONSE_STANDARD_NAME
      operationId: ProviderAuditorAttributes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              providers:
                type: array
                items:
                  type: object
                  properties:
                    owner:
                      type: string
                    auditor:
                      type: string
                    attributes:
                      type: array
                      items:
                        type: object
                        properties:
                          key:
                            type: string
                          value:
                            type: string
                        title: Attribute represents key value pair
                  title: Provider stores owner auditor and attributes details
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    title: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QueryProvidersResponse is response type for the Query/Providers
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: auditor
          in: path
          required: true
          type: string
        - name: owner
          in: path
          required: true
          type: string
      tags:
        - Query
  /akash/audit/v1beta3/audit/attributes/{owner}/list:
    get:
      summary: |-
        ProviderAttributes queries all provider signed attributes
        buf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE
        buf:lint:ignore RPC_RESPONSE_STANDARD_NAME
      operationId: ProviderAttributes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              providers:
                type: array
                items:
                  type: object
                  properties:
                    owner:
                      type: string
                    auditor:
                      type: string
                    attributes:
                      type: array
                      items:
                        type: object
                        properties:
                          key:
                            type: string
                          value:
                            type: string
                        title: Attribute represents key value pair
                  title: Provider stores owner auditor and attributes details
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    title: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QueryProvidersResponse is response type for the Query/Providers
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: owner
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /akash/provider/v1beta3/auditor/{auditor}/list:
    get:
      summary: |-
        AuditorAttributes queries all providers signed by this auditor
        buf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE
        buf:lint:ignore RPC_RESPONSE_STANDARD_NAME
      operationId: AuditorAttributes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              providers:
                type: array
                items:
                  type: object
                  properties:
                    owner:
                      type: string
                    auditor:
                      type: string
                    attributes:
                      type: array
                      items:
                        type: object
                        properties:
                          key:
                            type: string
                          value:
                            type: string
                        title: Attribute represents key value pair
                  title: Provider stores owner auditor and attributes details
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    title: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QueryProvidersResponse is response type for the Query/Providers
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: auditor
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /akash/cert/v1beta3/certificates/list:
    get:
      summary: Certificates queries certificates
      operationId: Certificates
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              certificates:
                type: array
                items:
                  type: object
                  properties:
                    certificate:
                      type: object
                      properties:
                        state:
                          type: string
                          enum:
                            - invalid
                            - valid
                            - revoked
                          default: invalid
                          description: >-
                            - invalid: Prefix should start with 0 in enum. So
                            declaring dummy state
                             - valid: CertificateValid denotes state for deployment active
                             - revoked: CertificateRevoked denotes state for deployment closed
                          title: State is an enum which refers to state of deployment
                        cert:
                          type: string
                          format: byte
                        pubkey:
                          type: string
                          format: byte
                      title: >-
                        Certificate stores state, certificate and it's public
                        key
                    serial:
                      type: string
                  title: >-
                    CertificateResponse contains a single X509 certificate and
                    its serial number
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    title: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QueryCertificatesResponse is response type for the
              Query/Certificates RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: filter.owner
          in: query
          required: false
          type: string
        - name: filter.serial
          in: query
          required: false
          type: string
        - name: filter.state
          in: query
          required: false
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /akash/deployment/v1beta3/deployments/info:
    get:
      summary: Deployment queries deployment details
      operationId: Deployment
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              deployment:
                type: object
                properties:
                  deployment_id:
                    type: object
                    properties:
                      owner:
                        type: string
                      dseq:
                        type: string
                        format: uint64
                    title: DeploymentID stores owner and sequence number
                  state:
                    type: string
                    enum:
                      - invalid
                      - active
                      - closed
                    default: invalid
                    description: >-
                      - invalid: Prefix should start with 0 in enum. So
                      declaring dummy state
                       - active: DeploymentActive denotes state for deployment active
                       - closed: DeploymentClosed denotes state for deployment closed
                    title: State is an enum which refers to state of deployment
                  version:
                    type: string
                    format: byte
                  created_at:
                    type: string
                    format: int64
                title: Deployment stores deploymentID, state and version details
              groups:
                type: array
                items:
                  type: object
                  properties:
                    group_id:
                      type: object
                      properties:
                        owner:
                          type: string
                        dseq:
                          type: string
                          format: uint64
                        gseq:
                          type: integer
                          format: int64
                      title: >-
                        GroupID stores owner, deployment sequence number and
                        group sequence number
                    state:
                      type: string
                      enum:
                        - invalid
                        - open
                        - paused
                        - insufficient_funds
                        - closed
                      default: invalid
                      description: >-
                        - invalid: Prefix should start with 0 in enum. So
                        declaring dummy state
                         - open: GroupOpen denotes state for group open
                         - paused: GroupOrdered denotes state for group ordered
                         - insufficient_funds: GroupInsufficientFunds denotes state for group insufficient_funds
                         - closed: GroupClosed denotes state for group closed
                      title: State is an enum which refers to state of group
                    group_spec:
                      type: object
                      properties:
                        name:
                          type: string
                        requirements:
                          type: object
                          properties:
                            signed_by:
                              title: >-
                                SignedBy list of keys that tenants expect to
                                have signatures from
                              type: object
                              properties:
                                all_of:
                                  type: array
                                  items:
                                    type: string
                                  title: >-
                                    all_of all keys in this list must have
                                    signed attributes
                                any_of:
                                  type: array
                                  items:
                                    type: string
                                  title: >-
                                    any_of at least of of the keys from the list
                                    must have signed attributes
                            attributes:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                                title: Attribute represents key value pair
                              title: >-
                                Attribute list of attributes tenant expects from
                                the provider
                          title: PlacementRequirements
                        resources:
                          type: array
                          items:
                            type: object
                            properties:
                              resource:
                                type: object
                                properties:
                                  id:
                                    type: integer
                                    format: int64
                                  cpu:
                                    type: object
                                    properties:
                                      units:
                                        type: object
                                        properties:
                                          val:
                                            type: string
                                            format: byte
                                        title: >-
                                          Unit stores cpu, memory and storage
                                          metrics
                                      attributes:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            value:
                                              type: string
                                          title: Attribute represents key value pair
                                    title: >-
                                      CPU stores resource units and cpu config
                                      attributes
                                  memory:
                                    type: object
                                    properties:
                                      quantity:
                                        type: object
                                        properties:
                                          val:
                                            type: string
                                            format: byte
                                        title: >-
                                          Unit stores cpu, memory and storage
                                          metrics
                                      attributes:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            key:
                                              type: string
                                            value:
                                              type: string
                                          title: Attribute represents key value pair
                                    title: >-
                                      Memory stores resource quantity and memory
                                      attributes
                                  storage:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          type: string
                                        quantity:
                                          type: object
                                          properties:
                                            val:
                                              type: string
                                              format: byte
                                          title: >-
                                            Unit stores cpu, memory and storage
                                            metrics
                                        attributes:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              key:
                                                type: string
                                              value:
                                             

# --- truncated at 32 KB (1667 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/akash/refs/heads/main/openapi/akash-blockchain-rest-api.yaml