Akash Network Bid Screening API

The Bid Screening API from Akash Network — 1 operation(s) for bid screening.

OpenAPI Specification

akash-bid-screening-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: AKASH - gRPC Gateway docs Addresses Bid Screening API
  description: A REST interface for state queries
  version: 1.0.0
tags:
- name: Bid Screening
paths:
  /v1/bid-screening:
    post:
      summary: Screen providers by deployment resource requirements
      tags:
      - Bid Screening
      security: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Group name
                  example: westcoast
                requirements:
                  type: object
                  properties:
                    signedBy:
                      type: object
                      properties:
                        allOf:
                          type: array
                          items:
                            type: string
                          default: []
                        anyOf:
                          type: array
                          items:
                            type: string
                          default: []
                      default: {}
                    attributes:
                      type: array
                      items:
                        type: object
                        properties:
                          key:
                            type: string
                            minLength: 1
                            maxLength: 128
                            pattern: ^([a-zA-Z][\w/.-]{1,126}[\w*]?)$
                            description: Attribute key
                            example: persistent
                          value:
                            type: string
                            description: Attribute value
                            example: 'false'
                        required:
                        - key
                        - value
                      default: []
                  default: {}
                resources:
                  type: array
                  items:
                    type: object
                    properties:
                      resource:
                        type: object
                        properties:
                          id:
                            type: integer
                            description: Resource unit ID
                            example: 1
                          cpu:
                            type: object
                            properties:
                              units:
                                type: object
                                properties:
                                  val:
                                    type: string
                                    maxLength: 80
                                required:
                                - val
                              attributes:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    key:
                                      type: string
                                      minLength: 1
                                      maxLength: 128
                                      pattern: ^([a-zA-Z][\w/.-]{1,126}[\w*]?)$
                                      description: Attribute key
                                      example: persistent
                                    value:
                                      type: string
                                      description: Attribute value
                                      example: 'false'
                                  required:
                                  - key
                                  - value
                            required:
                            - units
                          memory:
                            type: object
                            properties:
                              quantity:
                                type: object
                                properties:
                                  val:
                                    type: string
                                    maxLength: 80
                                required:
                                - val
                              attributes:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    key:
                                      type: string
                                      minLength: 1
                                      maxLength: 128
                                      pattern: ^([a-zA-Z][\w/.-]{1,126}[\w*]?)$
                                      description: Attribute key
                                      example: persistent
                                    value:
                                      type: string
                                      description: Attribute value
                                      example: 'false'
                                  required:
                                  - key
                                  - value
                            required:
                            - quantity
                          gpu:
                            type: object
                            properties:
                              units:
                                type: object
                                properties:
                                  val:
                                    type: string
                                    maxLength: 80
                                required:
                                - val
                              attributes:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    key:
                                      type: string
                                      minLength: 1
                                      maxLength: 128
                                      pattern: ^([a-zA-Z][\w/.-]{1,126}[\w*]?)$
                                      description: Attribute key
                                      example: persistent
                                    value:
                                      type: string
                                      description: Attribute value
                                      example: 'false'
                                  required:
                                  - key
                                  - value
                            required:
                            - units
                          storage:
                            type: array
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                  description: Storage volume name
                                  example: default
                                quantity:
                                  type: object
                                  properties:
                                    val:
                                      type: string
                                      maxLength: 80
                                  required:
                                  - val
                                attributes:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      key:
                                        type: string
                                        minLength: 1
                                        maxLength: 128
                                        pattern: ^([a-zA-Z][\w/.-]{1,126}[\w*]?)$
                                        description: Attribute key
                                        example: persistent
                                      value:
                                        type: string
                                        description: Attribute value
                                        example: 'false'
                                    required:
                                    - key
                                    - value
                              required:
                              - name
                              - quantity
                          endpoints:
                            type: array
                            items:
                              nullable: true
                        required:
                        - id
                        - cpu
                        - memory
                        - gpu
                        - storage
                      count:
                        type: integer
                        minimum: 1
                        description: Replica count
                        example: 1
                      price:
                        type: object
                        properties:
                          denom:
                            type: string
                          amount:
                            type: string
                            pattern: ^\d+$
                        required:
                        - denom
                        - amount
                    required:
                    - resource
                    - count
                    - price
                  minItems: 1
                  description: Resource units with replica counts
              required:
              - name
              - resources
      responses:
        '200':
          description: Returns matching providers
          content:
            application/json:
              schema:
                type: object
                properties:
                  providers:
                    type: array
                    items:
                      type: object
                      properties:
                        owner:
                          type: string
                          description: Provider address
                          example: akash1q7spv2cw06yszgfp4f9ed59lkka6ytn8g4tkjf
                        hostUri:
                          type: string
                          description: Provider HTTPS endpoint
                          example: https://provider.europlots.com:8443
                        isAudited:
                          type: boolean
                          description: True if signed by a known auditor
                        createdAt:
                          type: string
                          format: date-time
                          description: ISO 8601 timestamp marking when the provider was first enrolled in the inventory
                          example: '2026-01-01T00:00:00.000Z'
                      required:
                      - owner
                      - hostUri
                      - isAudited
                      - createdAt
                required:
                - providers
        '400':
          description: Invalid request body
securityDefinitions:
  kms:
    type: basic