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

# Set Option Product Prices

> Sets price adjustments for a product within a bundle option, organized by currency.



## OpenAPI

````yaml swagger.json put /bundles/{bundleId}/options/{optionId}/{productId}/price
openapi: 3.0.0
info:
  title: Quotivity API
  description: Developer APIs for the Quotivity CPQ platform.
  version: 1.0.0
servers:
  - url: https://api.secure.quotivity.com/v1
    description: Production API Server
security: []
paths:
  /bundles/{bundleId}/options/{optionId}/{productId}/price:
    put:
      tags:
        - Bundle Option Products
      summary: Set Option Product Prices
      description: >-
        Sets price adjustments for a product within a bundle option, organized
        by currency.
      parameters:
        - name: bundleId
          in: path
          required: true
          schema:
            type: string
        - name: optionId
          in: path
          required: true
          schema:
            type: string
        - name: productId
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetOptionProductPricesRequest'
      responses:
        '200':
          description: Prices set successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PriceBookEntry'
        '400':
          description: >-
            Invalid request (invalid currencies, option doesn't belong to
            bundle, or product not found)
        '401':
          description: Unauthorized
        '500':
          description: Internal Server Error
      security:
        - ApiKeyAuth: []
components:
  schemas:
    SetOptionProductPricesRequest:
      type: object
      properties:
        adjustments:
          type: object
          additionalProperties:
            oneOf:
              - $ref: '#/components/schemas/OverrideAdjustment'
              - $ref: '#/components/schemas/PercentAdjustment'
              - $ref: '#/components/schemas/VolumeAdjustment'
              - $ref: '#/components/schemas/NullAdjustment'
              - $ref: '#/components/schemas/TableEnumAdjustment'
              - $ref: '#/components/schemas/TableRangeAdjustment'
            nullable: true
      required:
        - adjustments
    PriceBookEntry:
      type: object
      properties:
        accountId:
          type: string
        priceBookId:
          type: string
        productId:
          type: string
        adjustments:
          type: object
          additionalProperties:
            oneOf:
              - $ref: '#/components/schemas/PriceBookEntryAdjustment'
            nullable: true
      required:
        - accountId
        - priceBookId
        - productId
        - adjustments
    OverrideAdjustment:
      allOf:
        - $ref: '#/components/schemas/PriceAdjustmentBase'
        - type: object
          properties:
            type:
              type: string
              enum:
                - override
            amount:
              type: number
            allowUnitPriceEditing:
              type: boolean
              description: When true, allows sales reps to edit unit price in Quote Builder
          required:
            - amount
    PercentAdjustment:
      allOf:
        - $ref: '#/components/schemas/PriceAdjustmentBase'
        - type: object
          properties:
            type:
              type: string
              enum:
                - percent
            amount:
              type: number
            allowUnitPriceEditing:
              type: boolean
              description: When true, allows sales reps to edit unit price in Quote Builder
          required:
            - amount
    VolumeAdjustment:
      allOf:
        - $ref: '#/components/schemas/PriceAdjustmentBase'
        - type: object
          properties:
            type:
              type: string
              enum:
                - volume
            tiers:
              type: array
              items:
                type: object
                properties:
                  firstUnit:
                    type: number
                  lastUnit:
                    type: number
                    nullable: true
                  unitPrice:
                    type: number
                required:
                  - firstUnit
                  - unitPrice
            allowUnitPriceEditing:
              type: boolean
              description: When true, allows sales reps to edit unit price in Quote Builder
          required:
            - tiers
    NullAdjustment:
      allOf:
        - $ref: '#/components/schemas/PriceAdjustmentBase'
        - type: object
          properties:
            type:
              nullable: true
              enum:
                - null
              description: Explicitly clear an adjustment (represents null).
            amount:
              nullable: true
              enum:
                - null
              description: Always null for a NullAdjustment.
          required:
            - type
            - amount
    TableEnumAdjustment:
      allOf:
        - $ref: '#/components/schemas/PriceAdjustmentBase'
        - type: object
          properties:
            type:
              type: string
              enum:
                - enum
            property:
              type: string
            values:
              type: array
              items:
                type: object
                properties:
                  value:
                    type: string
                  unitPrice:
                    type: number
                required:
                  - value
                  - unitPrice
            allowUnitPriceEditing:
              type: boolean
              description: When true, allows sales reps to edit unit price in Quote Builder
          required:
            - property
            - values
    TableRangeAdjustment:
      allOf:
        - $ref: '#/components/schemas/PriceAdjustmentBase'
        - type: object
          properties:
            type:
              type: string
              enum:
                - range
            property:
              type: string
            values:
              type: array
              items:
                type: object
                properties:
                  firstUnit:
                    type: number
                  lastUnit:
                    type: number
                  unitPrice:
                    type: number
                required:
                  - firstUnit
                  - lastUnit
                  - unitPrice
            allowUnitPriceEditing:
              type: boolean
              description: When true, allows sales reps to edit unit price in Quote Builder
          required:
            - property
            - values
    PriceBookEntryAdjustment:
      oneOf:
        - $ref: '#/components/schemas/OverrideAdjustment'
        - $ref: '#/components/schemas/PercentAdjustment'
        - $ref: '#/components/schemas/VolumeAdjustment'
        - $ref: '#/components/schemas/TableEnumAdjustment'
        - $ref: '#/components/schemas/TableRangeAdjustment'
        - $ref: '#/components/schemas/VariantAdjustment'
    PriceAdjustmentBase:
      type: object
      properties:
        type:
          type: string
          nullable: true
      required:
        - type
    VariantAdjustment:
      allOf:
        - $ref: '#/components/schemas/PriceAdjustmentBase'
        - type: object
          properties:
            type:
              type: string
              enum:
                - variant
            values:
              type: array
              items:
                type: object
                properties:
                  value:
                    type: string
                  unitPrice:
                    type: number
                required:
                  - value
                  - unitPrice
            allowUnitPriceEditing:
              type: boolean
              description: When true, allows sales reps to edit unit price in Quote Builder
          required:
            - values
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````