curl --request PATCH \
--url https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"reason": "Price adjustment from Customer Representative",
"attributes": {
"source": "CSR"
}
}
'import requests
url = "https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}"
payload = {
"reason": "Price adjustment from Customer Representative",
"attributes": { "source": "CSR" }
}
headers = {
"x-fabric-tenant-id": "<x-fabric-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {
'x-fabric-tenant-id': '<x-fabric-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
reason: 'Price adjustment from Customer Representative',
attributes: {source: 'CSR'}
})
};
fetch('https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/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/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'reason' => 'Price adjustment from Customer Representative',
'attributes' => [
'source' => 'CSR'
]
]),
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/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}"
payload := strings.NewReader("{\n \"reason\": \"Price adjustment from Customer Representative\",\n \"attributes\": {\n \"source\": \"CSR\"\n }\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reason\": \"Price adjustment from Customer Representative\",\n \"attributes\": {\n \"source\": \"CSR\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reason\": \"Price adjustment from Customer Representative\",\n \"attributes\": {\n \"source\": \"CSR\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",
"price": {
"amount": 12.99
},
"reason": "Price adjustment from customer representative.",
"attributes": {
"source": "CSR"
},
"updatedAt": "2024-06-13T16:50:00.682Z",
"createdAt": "2024-06-13T16:50:00.682Z"
}{
"type": "BAD_REQUEST",
"message": "x-fabric-tenant-id is required"
}{
"type": "CART_NOT_FOUND",
"message": "Cart not found"
}Update fulfillment adjustment
Updates the adjustment to the fulfillment associated with the corresponding cart.
The Cart ID from the Create cart endpoint is used in the path parameter.
The Fulfillment ID from the Create fulfillment endpoint is used in the path parameter.
The Adjustment ID from the Create fulfillment adjustment endpoint is used in the path parameter.
curl --request PATCH \
--url https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"reason": "Price adjustment from Customer Representative",
"attributes": {
"source": "CSR"
}
}
'import requests
url = "https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}"
payload = {
"reason": "Price adjustment from Customer Representative",
"attributes": { "source": "CSR" }
}
headers = {
"x-fabric-tenant-id": "<x-fabric-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {
'x-fabric-tenant-id': '<x-fabric-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
reason: 'Price adjustment from Customer Representative',
attributes: {source: 'CSR'}
})
};
fetch('https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/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/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'reason' => 'Price adjustment from Customer Representative',
'attributes' => [
'source' => 'CSR'
]
]),
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/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}"
payload := strings.NewReader("{\n \"reason\": \"Price adjustment from Customer Representative\",\n \"attributes\": {\n \"source\": \"CSR\"\n }\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reason\": \"Price adjustment from Customer Representative\",\n \"attributes\": {\n \"source\": \"CSR\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/carts/{cartId}/fulfillments/{fulfillmentId}/adjustments/{adjustmentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reason\": \"Price adjustment from Customer Representative\",\n \"attributes\": {\n \"source\": \"CSR\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93",
"price": {
"amount": 12.99
},
"reason": "Price adjustment from customer representative.",
"attributes": {
"source": "CSR"
},
"updatedAt": "2024-06-13T16:50:00.682Z",
"createdAt": "2024-06-13T16:50:00.682Z"
}{
"type": "BAD_REQUEST",
"message": "x-fabric-tenant-id is required"
}{
"type": "CART_NOT_FOUND",
"message": "Cart not found"
}Authorizations
This is the authorization token used to authenticate the request. You must pass the access token generated from the system app. For more information, see the Making your first API request section.
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.
"617329dfd5288b0011332311"
Path Parameters
The 24-character system-generated Cart ID. This ID is generated using the Create cart endpoint.
The Fulfilmment ID that was generated when a fulfillment was created using the Create fulfillment endpoint.
The Adjustment ID generated when an adjustment was created using the Create adjustment endpoint.
Body
Response
Created
Adjustment
The Adjustment ID generated when an adjustment was created using the Create adjustment endpoint.
"a8577d7f-0d4d-4b22-8e85-7b4a2e90dc93"
Was this page helpful?
