> ## Documentation Index
> Fetch the complete documentation index at: https://docs.smartbills.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Put products variants



## OpenAPI

````yaml /api-reference/openapi.json put /products/{productId}/variants/{variantId}
openapi: 3.0.4
info:
  title: Smartbills.API
  version: v1
servers:
  - url: https://api.smartbills.io
    description: Production
security: []
paths:
  /products/{productId}/variants/{variantId}:
    put:
      tags:
        - ProductVariants
      parameters:
        - name: productId
          in: path
          required: true
          schema:
            type: integer
            format: int64
        - name: variantId
          in: path
          required: true
          schema:
            type: integer
            format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/BusinessProductsProductVariantsProductVariantUpdateRequest
          text/json:
            schema:
              $ref: >-
                #/components/schemas/BusinessProductsProductVariantsProductVariantUpdateRequest
          application/*+json:
            schema:
              $ref: >-
                #/components/schemas/BusinessProductsProductVariantsProductVariantUpdateRequest
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: >-
                  #/components/schemas/BusinessProductsProductVariantsSBProductVariantResponse
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/BusinessProductsProductVariantsSBProductVariantResponse
            text/json:
              schema:
                $ref: >-
                  #/components/schemas/BusinessProductsProductVariantsSBProductVariantResponse
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
        '403':
          description: Forbidden
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
        '404':
          description: Not Found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/MicrosoftAspNetCoreMvcProblemDetails'
components:
  schemas:
    BusinessProductsProductVariantsProductVariantUpdateRequest:
      type: object
      properties:
        initialPrice:
          type: number
          format: double
          nullable: true
        price:
          type: number
          format: double
        weightUnit:
          type: string
          nullable: true
        weight:
          type: number
          format: double
        taxable:
          type: boolean
        name:
          type: string
          nullable: true
        imageIds:
          type: array
          items:
            type: integer
            format: int64
          nullable: true
        sku:
          type: string
          nullable: true
        upc:
          type: string
          nullable: true
      additionalProperties: false
    BusinessProductsProductVariantsSBProductVariantResponse:
      type: object
      properties:
        id:
          type: integer
          format: int64
        initialPrice:
          type: number
          format: double
          nullable: true
        price:
          type: number
          format: double
        weightUnit:
          type: string
          nullable: true
        weight:
          type: number
          format: double
        taxable:
          type: boolean
        name:
          type: string
          nullable: true
        sku:
          type: string
          nullable: true
        upc:
          type: string
          nullable: true
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
          nullable: true
        productId:
          type: integer
          format: int64
      additionalProperties: false
    MicrosoftAspNetCoreMvcProblemDetails:
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
      additionalProperties: {}

````