Skip to content

Set Option Product Prices

PUT https://api.secure.quotivity.com/v1/bundles/{bundleId}/options/{optionId}/{productId}/price

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

Send your API key in the x-api-key header. See Generating API keys.

Name Type Required Description
bundleId string Yes —
optionId string Yes —
productId string Yes —

Required, application/json: SetOptionProductPricesRequest

Status Body Description
200 PriceBookEntry Prices set successfully
400 — Invalid request (invalid currencies, option doesn’t belong to bundle, or product not found)
401 — Unauthorized
500 — Internal Server Error

Derives the list price from the product’s hs_cost_of_goods_sold: basis amount adds value to cost; basis percent applies value as a fraction of cost (0.3 = 30%) as a markup (cost × (1 + value)) or a margin (cost ÷ (1 − value)). Non-primary currencies convert the cost with the account’s cached HubSpot exchange rate. value must not be negative and a margin must be below 1. Requires the Cost Plus feature (Enterprise).

Extends PriceAdjustmentBase.

Field Type Required Description
type costplus Yes —
basis amount | percent Yes —
mode markup | margin No Read only when basis is percent; defaults to markup.
value number Yes Currency amount above cost for amount; fraction of cost for percent.
round boolean No Round the derived price to 2 decimals (default true); false keeps 5 decimals.

Extends PriceAdjustmentBase.

Field Type Required Description
type null Yes Explicitly clear an adjustment (represents null).
amount null Yes Always null for a NullAdjustment.

Extends PriceAdjustmentBase.

Field Type Required Description
type override Yes —
amount number Yes —

Extends PriceAdjustmentBase.

Field Type Required Description
type percent Yes —
amount number Yes —
Field Type Required Description
type string Yes —
Field Type Required Description
accountId string Yes —
priceBookId string Yes —
productId string Yes —
adjustments map of string to PriceBookEntryAdjustment Yes Price adjustments keyed by ISO 4217 currency code (for example USD, EUR). The key is the currency; the value carries the adjustment only.
calculationIdOverride string No When set, overrides default calculated pricing for this price book entry. Cleared when null.
allowUnitPriceEditing boolean No When true, sales reps may edit unit price in Quote Builder for this product on this price book (entry-level, not per currency).

Type: OverrideAdjustment | PercentAdjustment | CostPlusAdjustment | VolumeAdjustment | TableEnumAdjustment | TableRangeAdjustment | VariantAdjustment

Field Type Required Description
adjustments map of string to OverrideAdjustment | PercentAdjustment | VolumeAdjustment | NullAdjustment | TableEnumAdjustment | TableRangeAdjustment Yes Price adjustments keyed by ISO 4217 currency code (for example USD, EUR); keys are uppercased by the API. The key is the currency: an adjustment value carries no currency field of its own, and there is no currency field beside productId. Each value is a single adjustment object, or null to clear that currency.

Example adjustments:

{
"USD": {
"type": "override",
"amount": 100
},
"EUR": {
"type": "percent",
"amount": 0.9
}
}

Extends PriceAdjustmentBase.

Field Type Required Description
type enum Yes —
property string Yes —
values object[] Yes —

Extends PriceAdjustmentBase.

Field Type Required Description
type range Yes —
property string Yes —
values object[] Yes —

Extends PriceAdjustmentBase.

Field Type Required Description
type variant Yes —
values object[] Yes —

Extends PriceAdjustmentBase.

Field Type Required Description
type volume Yes —
tiers object[] Yes —