Set Product Prices
curl --request PUT \
--url https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"productId": "all",
"adjustments": {},
"calculationIdOverride": "<string>",
"allowUnitPriceEditing": true
}
'import requests
url = "https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices"
payload = {
"productId": "all",
"adjustments": {},
"calculationIdOverride": "<string>",
"allowUnitPriceEditing": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
productId: 'all',
adjustments: {},
calculationIdOverride: '<string>',
allowUnitPriceEditing: true
})
};
fetch('https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'productId' => 'all',
'adjustments' => [
],
'calculationIdOverride' => '<string>',
'allowUnitPriceEditing' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices"
payload := strings.NewReader("{\n \"productId\": \"all\",\n \"adjustments\": {},\n \"calculationIdOverride\": \"<string>\",\n \"allowUnitPriceEditing\": true\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"productId\": \"all\",\n \"adjustments\": {},\n \"calculationIdOverride\": \"<string>\",\n \"allowUnitPriceEditing\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"productId\": \"all\",\n \"adjustments\": {},\n \"calculationIdOverride\": \"<string>\",\n \"allowUnitPriceEditing\": true\n}"
response = http.request(request)
puts response.read_body[
{
"accountId": "<string>",
"priceBookId": "<string>",
"productId": "<string>",
"adjustments": {},
"calculationIdOverride": "<string>",
"allowUnitPriceEditing": true
}
]Price Book Entries
Set Product Prices
Sets prices for multiple products in a price book. Accepts either a single price object or an array of price objects.
PUT
/
pricebooks
/
{priceBookId}
/
prices
Set Product Prices
curl --request PUT \
--url https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"productId": "all",
"adjustments": {},
"calculationIdOverride": "<string>",
"allowUnitPriceEditing": true
}
'import requests
url = "https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices"
payload = {
"productId": "all",
"adjustments": {},
"calculationIdOverride": "<string>",
"allowUnitPriceEditing": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
productId: 'all',
adjustments: {},
calculationIdOverride: '<string>',
allowUnitPriceEditing: true
})
};
fetch('https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'productId' => 'all',
'adjustments' => [
],
'calculationIdOverride' => '<string>',
'allowUnitPriceEditing' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices"
payload := strings.NewReader("{\n \"productId\": \"all\",\n \"adjustments\": {},\n \"calculationIdOverride\": \"<string>\",\n \"allowUnitPriceEditing\": true\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"productId\": \"all\",\n \"adjustments\": {},\n \"calculationIdOverride\": \"<string>\",\n \"allowUnitPriceEditing\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.secure.quotivity.com/v1/pricebooks/{priceBookId}/prices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"productId\": \"all\",\n \"adjustments\": {},\n \"calculationIdOverride\": \"<string>\",\n \"allowUnitPriceEditing\": true\n}"
response = http.request(request)
puts response.read_body[
{
"accountId": "<string>",
"priceBookId": "<string>",
"productId": "<string>",
"adjustments": {},
"calculationIdOverride": "<string>",
"allowUnitPriceEditing": true
}
]Authorizations
Path Parameters
Body
application/json
- object
- object[]
Available options:
all Show child attributes
Show child attributes
Optional calculated pricing override for this entry; null clears.
Entry-level unit-price editing flag for Quote Builder; null clears. Do not send inside adjustment objects.
Response
Prices set successfully
Show child attributes
Show child attributes
When set, overrides default calculated pricing for this price book entry. Cleared when null.
When true, sales reps may edit unit price in Quote Builder for this product on this price book (entry-level, not per currency).