curl --request PUT \
--url https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"amount": 60.5,
"reason": "CSR Adjustment",
"attributes": {
"productFamily": "Laptop computers"
}
}
'import requests
url = "https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}"
payload = {
"amount": 60.5,
"reason": "CSR Adjustment",
"attributes": { "productFamily": "Laptop computers" }
}
headers = {
"x-fabric-tenant-id": "<x-fabric-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {
'x-fabric-tenant-id': '<x-fabric-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
amount: 60.5,
reason: 'CSR Adjustment',
attributes: {productFamily: 'Laptop computers'}
})
};
fetch('https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}', 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.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}",
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([
'amount' => 60.5,
'reason' => 'CSR Adjustment',
'attributes' => [
'productFamily' => 'Laptop computers'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-fabric-tenant-id: <x-fabric-tenant-id>"
],
]);
$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.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}"
payload := strings.NewReader("{\n \"amount\": 60.5,\n \"reason\": \"CSR Adjustment\",\n \"attributes\": {\n \"productFamily\": \"Laptop computers\"\n }\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-fabric-tenant-id", "<x-fabric-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
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.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"amount\": 60.5,\n \"reason\": \"CSR Adjustment\",\n \"attributes\": {\n \"productFamily\": \"Laptop computers\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"amount\": 60.5,\n \"reason\": \"CSR Adjustment\",\n \"attributes\": {\n \"productFamily\": \"Laptop computers\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "c695af14-5e33-402c-9d8d-71edcf4856a8",
"amount": 60.5,
"reason": "CSR Adjustment",
"attributes": {
"productFamily": "Laptop computers"
},
"createdAt": "2022-09-06T14:07:17.000Z",
"updatedAt": "2022-09-06T14:07:17.000Z"
}{
"type": "BAD_REQUEST",
"message": "Bad Request"
}{
"type": "UNAUTHORIZED",
"message": "Unauthorized User"
}{
"type": "NOT_FOUND",
"message": "Cart not found"
}{
"type": "CONFLICT",
"message": "Source was modified while the request was being processed"
}{
"type": "INTERNAL_SERVER_ERROR",
"message": "Internal server error"
}Update a price adjustment for a cart
Using this endpoint, you can update a particular price adjustment from a list of price adjustments applied to a cart’s total amount.
curl --request PUT \
--url https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"amount": 60.5,
"reason": "CSR Adjustment",
"attributes": {
"productFamily": "Laptop computers"
}
}
'import requests
url = "https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}"
payload = {
"amount": 60.5,
"reason": "CSR Adjustment",
"attributes": { "productFamily": "Laptop computers" }
}
headers = {
"x-fabric-tenant-id": "<x-fabric-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {
'x-fabric-tenant-id': '<x-fabric-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
amount: 60.5,
reason: 'CSR Adjustment',
attributes: {productFamily: 'Laptop computers'}
})
};
fetch('https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}', 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.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}",
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([
'amount' => 60.5,
'reason' => 'CSR Adjustment',
'attributes' => [
'productFamily' => 'Laptop computers'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-fabric-tenant-id: <x-fabric-tenant-id>"
],
]);
$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.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}"
payload := strings.NewReader("{\n \"amount\": 60.5,\n \"reason\": \"CSR Adjustment\",\n \"attributes\": {\n \"productFamily\": \"Laptop computers\"\n }\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-fabric-tenant-id", "<x-fabric-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
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.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"amount\": 60.5,\n \"reason\": \"CSR Adjustment\",\n \"attributes\": {\n \"productFamily\": \"Laptop computers\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/v3/carts/{cartId}/adjustments/{adjustmentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"amount\": 60.5,\n \"reason\": \"CSR Adjustment\",\n \"attributes\": {\n \"productFamily\": \"Laptop computers\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "c695af14-5e33-402c-9d8d-71edcf4856a8",
"amount": 60.5,
"reason": "CSR Adjustment",
"attributes": {
"productFamily": "Laptop computers"
},
"createdAt": "2022-09-06T14:07:17.000Z",
"updatedAt": "2022-09-06T14:07:17.000Z"
}{
"type": "BAD_REQUEST",
"message": "Bad Request"
}{
"type": "UNAUTHORIZED",
"message": "Unauthorized User"
}{
"type": "NOT_FOUND",
"message": "Cart not found"
}{
"type": "CONFLICT",
"message": "Source was modified while the request was being processed"
}{
"type": "INTERNAL_SERVER_ERROR",
"message": "Internal server error"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
A header used by fabric to identify the tenant making the request. You must include tenant id in the authentication header for an API request to access any of fabric’s endpoints. You can retrieve the tenant id , which is also called account id, from Copilot. This header is required.
x-fabric-channel-id identifies the sales channel where the API request is being made; primarily for multichannel use cases. The channel ids are 12 corresponding to US and 13 corresponding to Canada. The default channel id is 12. This field is required.
Unique request ID
Path Parameters
Cart ID
"b8a64b52-dab4-8137-8d6a-f2c2337abc1"
Price adjustment identifier
"d7e78a21-bee3-4448-bf1c-d5b5461dbda2"
Body
A sample request with details of the price adjustment.
Price adjustment details
Amount to be adjusted with the specified line item's total amount or with a specified cart's total amount
60.5
Price adjustment reason
"CSR Adjustment"
Placeholder for additional information
Show child attributes
Show child attributes
{ "productFamily": "Laptop computers" }
Response
OK
Price adjustment details for the specified line item or the specified cart
Price adjustment ID; it identifies a single price adjustment object within the price adjustments array.
"c695af14-5e33-402c-9d8d-71edcf4856a8"
Amount by which the line item's total amount or the specified cart's total amount is adjusted
60.5
Price adjustment reason
"CSR Adjustment"
Placeholder for additional information
Show child attributes
Show child attributes
{ "productFamily": "Laptop computers" }
Time cart was created
"2022-09-06T14:07:17.000Z"
Time cart was last updated
"2022-09-06T14:07:17.000Z"
Was this page helpful?
