Akash Network Leases API

The Leases API from Akash Network — 2 operation(s) for leases.

OpenAPI Specification

akash-leases-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: AKASH - gRPC Gateway docs Addresses Leases API
  description: A REST interface for state queries
  version: 1.0.0
tags:
- name: Leases
paths:
  /v1/leases:
    post:
      summary: Create leases and send manifest
      operationId: createLease
      tags:
      - Leases
      security:
      - BearerAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                manifest:
                  type: string
                leases:
                  type: array
                  items:
                    type: object
                    properties:
                      dseq:
                        type: string
                        pattern: ^d+$
                      gseq:
                        type: number
                      oseq:
                        type: number
                      provider:
                        type: string
                    required:
                    - dseq
                    - gseq
                    - oseq
                    - provider
              required:
              - manifest
              - leases
      responses:
        '200':
          description: Leases created and manifest sent
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      deployment:
                        type: object
                        properties:
                          id:
                            type: object
                            properties:
                              owner:
                                type: string
                              dseq:
                                type: string
                                pattern: ^d+$
                            required:
                            - owner
                            - dseq
                          state:
                            type: string
                          hash:
                            type: string
                          created_at:
                            type: string
                        required:
                        - id
                        - state
                        - hash
                        - created_at
                      leases:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: object
                              properties:
                                owner:
                                  type: string
                                dseq:
                                  type: string
                                  pattern: ^d+$
                                gseq:
                                  type: number
                                oseq:
                                  type: number
                                provider:
                                  type: string
                                bseq:
                                  type: number
                              required:
                              - owner
                              - dseq
                              - gseq
                              - oseq
                              - provider
                              - bseq
                            state:
                              type: string
                            price:
                              type: object
                              properties:
                                denom:
                                  type: string
                                amount:
                                  type: string
                              required:
                              - denom
                              - amount
                            created_at:
                              type: string
                            closed_on:
                              type: string
                            reason:
                              type: string
                            status:
                              type: object
                              nullable: true
                              properties:
                                forwarded_ports:
                                  type: object
                                  additionalProperties:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        port:
                                          type: number
                                        externalPort:
                                          type: number
                                        host:
                                          type: string
                                        available:
                                          type: number
                                      required:
                                      - port
                                      - externalPort
                                ips:
                                  type: object
                                  additionalProperties:
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        IP:
                                          type: string
                                        Port:
                                          type: number
                                        ExternalPort:
                                          type: number
                                        Protocol:
                                          type: string
                                      required:
                                      - IP
                                      - Port
                                      - ExternalPort
                                      - Protocol
                                services:
                                  type: object
                                  additionalProperties:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      available:
                                        type: number
                                      total:
                                        type: number
                                      uris:
                                        type: array
                                        items:
                                          type: string
                                      observed_generation:
                                        type: number
                                      replicas:
                                        type: number
                                      updated_replicas:
                                        type: number
                                      ready_replicas:
                                        type: number
                                      available_replicas:
                                        type: number
                                    required:
                                    - name
                                    - available
                                    - total
                                    - uris
                                    - observed_generation
                                    - replicas
                                    - updated_replicas
                                    - ready_replicas
                                    - available_replicas
                              required:
                              - forwarded_ports
                              - ips
                              - services
                          required:
                          - id
                          - state
                          - price
                          - created_at
                          - closed_on
                          - status
                      escrow_account:
                        type: object
                        properties:
                          id:
                            type: object
                            properties:
                              scope:
                                type: string
                              xid:
                                type: string
                            required:
                            - scope
                            - xid
                          state:
                            type: object
                            properties:
                              owner:
                                type: string
                              state:
                                type: string
                              transferred:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    denom:
                                      type: string
                                    amount:
                                      type: string
                                  required:
                                  - denom
                                  - amount
                              settled_at:
                                type: string
                              funds:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    denom:
                                      type: string
                                    amount:
                                      type: string
                                  required:
                                  - denom
                                  - amount
                              deposits:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    owner:
                                      type: string
                                    height:
                                      type: string
                                    source:
                                      type: string
                                    balance:
                                      type: object
                                      properties:
                                        denom:
                                          type: string
                                        amount:
                                          type: string
                                      required:
                                      - denom
                                      - amount
                                  required:
                                  - owner
                                  - height
                                  - source
                                  - balance
                            required:
                            - owner
                            - state
                            - transferred
                            - settled_at
                            - funds
                            - deposits
                        required:
                        - id
                        - state
                    required:
                    - deployment
                    - leases
                    - escrow_account
                required:
                - data
  /akash/market/{version}/leases/list:
    get:
      summary: List leases (database fallback)
      tags:
      - Leases
      security: []
      parameters:
      - schema:
          type: string
        required: false
        name: filters.owner
        in: query
      - schema:
          type: string
        required: false
        name: filters.dseq
        in: query
      - schema:
          type: number
          nullable: true
        required: false
        name: filters.gseq
        in: query
      - schema:
          type: number
          nullable: true
        required: false
        name: filters.oseq
        in: query
      - schema:
          type: string
        required: false
        name: filters.provider
        in: query
      - schema:
          type: string
        required: false
        name: filters.state
        in: query
      - schema:
          type: number
          nullable: true
        required: false
        name: pagination.offset
        in: query
      - schema:
          type: number
          nullable: true
        required: false
        name: pagination.limit
        in: query
      - schema:
          type: string
        required: false
        name: pagination.key
        in: query
      - schema:
          type: string
        required: false
        name: pagination.count_total
        in: query
      - schema:
          type: boolean
          nullable: true
        required: false
        name: pagination.reverse
        in: query
      responses:
        '200':
          description: Returns paginated list of leases from database
          content:
            application/json:
              schema:
                type: object
                properties:
                  leases:
                    type: array
                    items:
                      type: object
                      properties:
                        lease:
                          type: object
                          properties:
                            id:
                              type: object
                              properties:
                                owner:
                                  type: string
                                dseq:
                                  type: string
                                  pattern: ^d+$
                                gseq:
                                  type: number
                                oseq:
                                  type: number
                                provider:
                                  type: string
                                bseq:
                                  type: number
                              required:
                              - owner
                              - dseq
                              - gseq
                              - oseq
                              - provider
                              - bseq
                            state:
                              type: string
                            price:
                              type: object
                              properties:
                                denom:
                                  type: string
                                amount:
                                  type: string
                              required:
                              - denom
                              - amount
                            created_at:
                              type: string
                            closed_on:
                              type: string
                            reason:
                              type: string
                          required:
                          - id
                          - state
                          - price
                          - created_at
                          - closed_on
                        escrow_payment:
                          type: object
                          properties:
                            id:
                              type: object
                              properties:
                                aid:
                                  type: object
                                  properties:
                                    scope:
                                      type: string
                                    xid:
                                      type: string
                                  required:
                                  - scope
                                  - xid
                                xid:
                                  type: string
                              required:
                              - aid
                              - xid
                            state:
                              type: object
                              properties:
                                owner:
                                  type: string
                                state:
                                  type: string
                                rate:
                                  type: object
                                  properties:
                                    denom:
                                      type: string
                                    amount:
                                      type: string
                                  required:
                                  - denom
                                  - amount
                                balance:
                                  type: object
                                  properties:
                                    denom:
                                      type: string
                                    amount:
                                      type: string
                                  required:
                                  - denom
                                  - amount
                                unsettled:
                                  type: object
                                  properties:
                                    denom:
                                      type: string
                                    amount:
                                      type: string
                                  required:
                                  - denom
                                  - amount
                                withdrawn:
                                  type: object
                                  properties:
                                    denom:
                                      type: string
                                    amount:
                                      type: string
                                  required:
                                  - denom
                                  - amount
                              required:
                              - owner
                              - state
                              - rate
                              - balance
                              - unsettled
                              - withdrawn
                          required:
                          - id
                          - state
                      required:
                      - lease
                      - escrow_payment
                  pagination:
                    type: object
                    properties:
                      next_key:
                        type: string
                        nullable: true
                      total:
                        type: string
                    required:
                    - next_key
                    - total
                required:
                - leases
                - pagination
securityDefinitions:
  kms:
    type: basic