BentoML bentos API

bentos

OpenAPI Specification

bentoml-bentos-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: yatai api server admin api v1 bentos API
  description: This is yatai api server.
  version: 1.0.0
tags:
- name: bentos
  description: bentos
paths:
  /api/v1/bento_repositories/{bentoRepositoryName}/bentos:
    get:
      tags:
      - bentos
      summary: List bentos
      operationId: List bentos
      parameters:
      - name: bentoRepositoryName
        in: path
        required: true
        schema:
          type: string
      - name: count
        in: query
        schema:
          type: integer
          format: int32
      - name: q
        in: query
        schema:
          type: string
      - name: search
        in: query
        schema:
          type: string
          nullable: true
      - name: start
        in: query
        schema:
          type: integer
          format: int32
      - name: X-Yatai-Organization
        in: header
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Schemasv1BentoWithSlimRepositoryListSchema'
    post:
      tags:
      - bentos
      summary: Create a bento
      operationId: Create a bento
      parameters:
      - name: bentoRepositoryName
        in: path
        required: true
        schema:
          type: string
      - name: X-Yatai-Organization
        in: header
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Create A BentoInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  bento_repository_uid:
                    type: string
                  build_at:
                    type: string
                    format: date-time
                  created_at:
                    type: string
                    format: date-time
                  creator:
                    type: object
                    properties:
                      application_status:
                        type: string
                      avatar_url:
                        type: string
                      created_at:
                        type: string
                        format: date-time
                      deleted_at:
                        type: string
                        format: date-time
                        nullable: true
                      email:
                        type: string
                      first_name:
                        type: string
                      from_sso:
                        type: boolean
                      is_super_admin:
                        type: boolean
                      labels:
                        type: array
                        items:
                          $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                      last_name:
                        type: string
                      name:
                        type: string
                      perm:
                        type: string
                      register_stage:
                        type: string
                      resource_type:
                        type: string
                        enum:
                        - user
                        - organization
                        - cluster
                        - host_cluster
                        - bento_repository
                        - bento
                        - deployment
                        - deployment_revision
                        - model_repository
                        - model
                        - api_token
                      uid:
                        type: string
                      updated_at:
                        type: string
                        format: date-time
                  deleted_at:
                    type: string
                    format: date-time
                    nullable: true
                  description:
                    type: string
                  image_build_status:
                    type: string
                  labels:
                    type: array
                    items:
                      $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                  manifest:
                    $ref: '#/components/schemas/ModelschemasBentoManifestSchema'
                  name:
                    type: string
                  presigned_download_url:
                    type: string
                  presigned_upload_url:
                    type: string
                  presigned_urls_deprecated:
                    type: boolean
                  resource_type:
                    type: string
                    enum:
                    - user
                    - organization
                    - cluster
                    - host_cluster
                    - bento_repository
                    - bento
                    - deployment
                    - deployment_revision
                    - model_repository
                    - model
                    - api_token
                  transmission_strategy:
                    type: string
                    nullable: true
                  uid:
                    type: string
                  updated_at:
                    type: string
                    format: date-time
                  upload_finished_at:
                    type: string
                    format: date-time
                    nullable: true
                  upload_finished_reason:
                    type: string
                  upload_id:
                    type: string
                  upload_started_at:
                    type: string
                    format: date-time
                    nullable: true
                  upload_status:
                    type: string
                  version:
                    type: string
components:
  schemas:
    ModelschemasBentoRunnerResourceSchema:
      type: object
      properties:
        cpu:
          type: number
          format: double
          nullable: true
        custom_resources:
          type: object
          additionalProperties:
            type: number
            format: double
        nvidia_gpu:
          type: number
          format: double
          nullable: true
    ModelschemasEnvItemSchema:
      type: object
      properties:
        name:
          type: string
        stage:
          type: string
        value:
          type: string
    ModelschemasBentoManifestSchema:
      type: object
      properties:
        apis:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ModelschemasBentoApiSchema'
        bentoml_version:
          type: string
        dev:
          type: boolean
        entry_service:
          type: string
        envs:
          type: array
          items:
            $ref: '#/components/schemas/ModelschemasEnvItemSchema'
        image:
          $ref: '#/components/schemas/ModelschemasBentoImageInfoSchema'
        models:
          type: array
          items:
            type: string
        name:
          type: string
        runners:
          type: array
          items:
            $ref: '#/components/schemas/ModelschemasBentoRunnerSchema'
        schema:
          type: object
          additionalProperties: {}
        service:
          type: string
        services:
          type: array
          items:
            $ref: '#/components/schemas/ModelschemasBentoManifestServiceSchema'
        size_bytes:
          type: integer
          format: int32
        spec:
          type: integer
          format: int32
    ModelschemasLabelItemSchema:
      type: object
      properties:
        key:
          type: string
        stage:
          type: string
        value:
          type: string
    Schemasv1BentoWithSlimRepositoryListSchema:
      type: object
      properties:
        count:
          type: integer
          format: int32
        items:
          type: array
          items:
            type: object
            properties:
              bento_repository_uid:
                type: string
              build_at:
                type: string
                format: date-time
              created_at:
                type: string
                format: date-time
              creator:
                type: object
                properties:
                  application_status:
                    type: string
                  avatar_url:
                    type: string
                  created_at:
                    type: string
                    format: date-time
                  deleted_at:
                    type: string
                    format: date-time
                    nullable: true
                  email:
                    type: string
                  first_name:
                    type: string
                  from_sso:
                    type: boolean
                  is_super_admin:
                    type: boolean
                  labels:
                    type: array
                    items:
                      $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                  last_name:
                    type: string
                  name:
                    type: string
                  perm:
                    type: string
                  register_stage:
                    type: string
                  resource_type:
                    type: string
                    enum:
                    - user
                    - organization
                    - cluster
                    - host_cluster
                    - bento_repository
                    - bento
                    - deployment
                    - deployment_revision
                    - model_repository
                    - model
                    - api_token
                  uid:
                    type: string
                  updated_at:
                    type: string
                    format: date-time
              deleted_at:
                type: string
                format: date-time
                nullable: true
              description:
                type: string
              image_build_status:
                type: string
              labels:
                type: array
                items:
                  $ref: '#/components/schemas/ModelschemasLabelItemSchema'
              manifest:
                $ref: '#/components/schemas/ModelschemasBentoManifestSchema'
              name:
                type: string
              presigned_download_url:
                type: string
              presigned_upload_url:
                type: string
              presigned_urls_deprecated:
                type: boolean
              repository:
                type: object
                properties:
                  created_at:
                    type: string
                    format: date-time
                  deleted_at:
                    type: string
                    format: date-time
                    nullable: true
                  description:
                    type: string
                  labels:
                    type: array
                    items:
                      $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                  latest_bento:
                    type: object
                    properties:
                      bento_repository_uid:
                        type: string
                      build_at:
                        type: string
                        format: date-time
                      created_at:
                        type: string
                        format: date-time
                      creator:
                        type: object
                        properties:
                          application_status:
                            type: string
                          avatar_url:
                            type: string
                          created_at:
                            type: string
                            format: date-time
                          deleted_at:
                            type: string
                            format: date-time
                            nullable: true
                          email:
                            type: string
                          first_name:
                            type: string
                          from_sso:
                            type: boolean
                          is_super_admin:
                            type: boolean
                          labels:
                            type: array
                            items:
                              $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                          last_name:
                            type: string
                          name:
                            type: string
                          perm:
                            type: string
                          register_stage:
                            type: string
                          resource_type:
                            type: string
                            enum:
                            - user
                            - organization
                            - cluster
                            - host_cluster
                            - bento_repository
                            - bento
                            - deployment
                            - deployment_revision
                            - model_repository
                            - model
                            - api_token
                          uid:
                            type: string
                          updated_at:
                            type: string
                            format: date-time
                      deleted_at:
                        type: string
                        format: date-time
                        nullable: true
                      description:
                        type: string
                      image_build_status:
                        type: string
                      labels:
                        type: array
                        items:
                          $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                      manifest:
                        $ref: '#/components/schemas/ModelschemasBentoManifestSchema'
                      name:
                        type: string
                      presigned_download_url:
                        type: string
                      presigned_upload_url:
                        type: string
                      presigned_urls_deprecated:
                        type: boolean
                      resource_type:
                        type: string
                        enum:
                        - user
                        - organization
                        - cluster
                        - host_cluster
                        - bento_repository
                        - bento
                        - deployment
                        - deployment_revision
                        - model_repository
                        - model
                        - api_token
                      transmission_strategy:
                        type: string
                        nullable: true
                      uid:
                        type: string
                      updated_at:
                        type: string
                        format: date-time
                      upload_finished_at:
                        type: string
                        format: date-time
                        nullable: true
                      upload_finished_reason:
                        type: string
                      upload_id:
                        type: string
                      upload_started_at:
                        type: string
                        format: date-time
                        nullable: true
                      upload_status:
                        type: string
                      version:
                        type: string
                  name:
                    type: string
                  organization:
                    type: object
                    properties:
                      created_at:
                        type: string
                        format: date-time
                      creator:
                        type: object
                        properties:
                          application_status:
                            type: string
                          avatar_url:
                            type: string
                          created_at:
                            type: string
                            format: date-time
                          deleted_at:
                            type: string
                            format: date-time
                            nullable: true
                          email:
                            type: string
                          first_name:
                            type: string
                          from_sso:
                            type: boolean
                          is_super_admin:
                            type: boolean
                          labels:
                            type: array
                            items:
                              $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                          last_name:
                            type: string
                          name:
                            type: string
                          perm:
                            type: string
                          register_stage:
                            type: string
                          resource_type:
                            type: string
                            enum:
                            - user
                            - organization
                            - cluster
                            - host_cluster
                            - bento_repository
                            - bento
                            - deployment
                            - deployment_revision
                            - model_repository
                            - model
                            - api_token
                          uid:
                            type: string
                          updated_at:
                            type: string
                            format: date-time
                      deleted_at:
                        type: string
                        format: date-time
                        nullable: true
                      description:
                        type: string
                      disable_grafana:
                        type: boolean
                      disable_resources_graphs:
                        type: boolean
                      enable_endpoints:
                        type: boolean
                      enable_mixture_scaling:
                        type: boolean
                      enable_monitoring_endpoint:
                        type: boolean
                      expired_at:
                        type: string
                        format: date-time
                        nullable: true
                      labels:
                        type: array
                        items:
                          $ref: '#/components/schemas/ModelschemasLabelItemSchema'
                      limit_group:
                        type: string
                        nullable: true
                      multi_tenancy:
                        type: boolean
                      name:
                        type: string
                      public:
                        type: boolean
                      resource_type:
                        type: string
                        enum:
                        - user
                        - organization
                        - cluster
                        - host_cluster
                        - bento_repository
                        - bento
                        - deployment
                        - deployment_revision
                        - model_repository
                        - model
                        - api_token
                      status:
                        type: string
                      uid:
                        type: string
                      updated_at:
                        type: string
                        format: date-time
                  resource_type:
                    type: string
                    enum:
                    - user
                    - organization
                    - cluster
                    - host_cluster
                    - bento_repository
                    - bento
                    - deployment
                    - deployment_revision
                    - model_repository
                    - model
                    - api_token
                  uid:
                    type: string
                  updated_at:
                    type: string
                    format: date-time
              resource_type:
                type: string
                enum:
                - user
                - organization
                - cluster
                - host_cluster
                - bento_repository
                - bento
                - deployment
                - deployment_revision
                - model_repository
                - model
                - api_token
              transmission_strategy:
                type: string
                nullable: true
              uid:
                type: string
              updated_at:
                type: string
                format: date-time
              upload_finished_at:
                type: string
                format: date-time
                nullable: true
              upload_finished_reason:
                type: string
              upload_id:
                type: string
              upload_started_at:
                type: string
                format: date-time
                nullable: true
              upload_status:
                type: string
              version:
                type: string
        start:
          type: integer
          format: int32
        total:
          type: integer
          format: int32
    ModelschemasBentoApiSchema:
      type: object
      properties:
        doc:
          type: string
        input:
          type: string
        output:
          type: string
        route:
          type: string
    Create A BentoInput:
      type: object
      properties:
        build_at:
          type: string
        description:
          type: string
        labels:
          type: array
          items:
            $ref: '#/components/schemas/ModelschemasLabelItemSchema'
        manifest:
          $ref: '#/components/schemas/ModelschemasBentoManifestSchema'
        version:
          type: string
    ModelschemasBentoImageInfoSchema:
      type: object
      properties:
        base_image:
          type: string
        commands:
          type: array
          items:
            type: string
        python_requirements:
          type: string
        python_version:
          type: string
    ModelschemasBentoManifestServiceSchema:
      type: object
      properties:
        config:
          type: object
          additionalProperties: {}
        models:
          type: array
          items:
            $ref: '#/components/schemas/ModelschemasBentoManifestModelSchema'
        name:
          type: string
        service:
          type: string
    ModelschemasBentoRunnerSchema:
      type: object
      properties:
        models:
          type: array
          items:
            type: string
        name:
          type: string
        resource_config:
          $ref: '#/components/schemas/ModelschemasBentoRunnerResourceSchema'
        runnable_type:
          type: string
    ModelschemasBentoManifestModelSchema:
      type: object
      properties:
        alias:
          type: string
        creation_time:
          type: string
        endpoint:
          type: string
        module:
          type: string
        registry:
          type: string
        tag:
          type: string
  securitySchemes:
    apiToken:
      type: apiKey
      in: header
      name: X-YATAI-API-TOKEN