> ## 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 Product Prices

> Sets prices for multiple products in a price book. Accepts either a single price object or an array of price objects.



## OpenAPI

````yaml swagger.json put /pricebooks/{priceBookId}/prices
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:
  /pricebooks/{priceBookId}/prices:
    put:
      summary: Set Product Prices
      description: >-
        Sets prices for multiple products in a price book. Accepts either a
        single price object or an array of price objects.
      parameters:
        - name: priceBookId
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/AllProductsPriceRequest'
                - type: array
                  items:
                    $ref: '#/components/schemas/SpecificProductPriceRequest'
      responses:
        '200':
          description: Prices set successfully
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PriceBookEntry'
        '204':
          description: Bulk update accepted (CSV generated/uploaded); no response body
        '401':
          description: Unauthorized
        '404':
          description: Price book not found
        '500':
          description: Internal Server Error
      security:
        - ApiKeyAuth: []
components:
  schemas:
    AllProductsPriceRequest:
      allOf:
        - $ref: '#/components/schemas/SpecificProductPriceRequest'
        - type: object
          properties:
            productId:
              type: string
              enum:
                - all
            adjustments:
              type: object
              additionalProperties:
                oneOf:
                  - $ref: '#/components/schemas/PercentAdjustment'
                nullable: true
          required:
            - productId
            - adjustments
    SpecificProductPriceRequest:
      type: object
      properties:
        productId:
          type: string
        adjustments:
          type: object
          additionalProperties:
            oneOf:
              - $ref: '#/components/schemas/NullAdjustment'
              - $ref: '#/components/schemas/OverrideAdjustment'
              - $ref: '#/components/schemas/PercentAdjustment'
              - $ref: '#/components/schemas/TableEnumAdjustment'
              - $ref: '#/components/schemas/TableRangeAdjustment'
              - $ref: '#/components/schemas/VariantAdjustment'
              - $ref: '#/components/schemas/VolumeAdjustment'
      required:
        - productId
    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
    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
    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
    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
    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
    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
    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
    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
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````