Create item adjustment - Fabric

Create item adjustment

cURL

curl --request POST \
  --url https://api.fabric.inc/v3/carts/{cartId}/items/{itemId}/adjustments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
  --data '
{
  "price": {
    "amount": 12.99
  },
  "reason": "Price adjustment from Customer Representative",
  "attributes": {
    "source": "CSR"
  }
}
'```

### Python Example

import requests

url = "https://api.fabric.inc/v3/carts/{cartId}/items/{itemId}/adjustments"

payload = { "price": { "amount": 12.99 }, "reason": "Price adjustment from Customer Representative", "attributes": { "source": "CSR" } } headers = { "x-fabric-tenant-id": "", "Authorization": "Bearer ", "Content-Type": "application/json" }

response = requests.post(url, json=payload, headers=headers)

print(response.text)


### JavaScript Example

const options = { method: 'POST', headers: { 'x-fabric-tenant-id': '', Authorization: 'Bearer ', 'Content-Type': 'application/json' }, body: JSON.stringify({ price: {amount: 12.99}, reason: 'Price adjustment from Customer Representative', attributes: {source: 'CSR'} }) };

fetch('https://api.fabric.inc/v3/carts/{cartId}/items/{itemId}/adjustments', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err));


### PHP Example
"https://api.fabric.inc/v3/carts/{cartId}/items/{itemId}/adjustments", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => json_encode([ 'price' => [ 'amount' => 12.99 ], 'reason' => 'Price adjustment from Customer Representative', 'attributes' => [ 'source' => 'CSR' ] ]), CURLOPT_HTTPHEADER => [ "Authorization: Bearer ", "Content-Type: application/json", "x-fabric-tenant-id: " ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } ``` ### Response Status Codes - **201** (Created) - **400** (Bad Request) - **404** (Not Found) ### Example Response ``` { "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" } ``` ### Error Example ``` { "type": "BAD_REQUEST", "message": "x-fabric-tenant-id is required" } ``` ``` { "type": "CART_NOT_FOUND", "message": "Cart not found" } ``` ### Authorization - **Authorization**: string (required) - This is the authorization token used to authenticate the request. You must pass the access token generated from the system app. ### Headers - **x-fabric-tenant-id**: string (required) - A header used by fabric to identify the tenant making the request. - **x-fabric-request-id**: string - Unique request ID for tracking. - **x-fabric-channel-id**: string - Identifies the sales channel through which the API request is being made. ### Path Parameters - **cartId**: string (required) - The 24-character system-generated Cart ID. - **itemId**: string (required) - The Item ID generated when the item was created.