curl --request PUT \
--url https://api.fabric.inc/v3/product-exclusion-lists/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"name": "Gucci handbags",
"startAt": "2022-05-04T09:23:51.459Z",
"endAt": "2099-12-31T00:00:00.000Z",
"scopes": [
"PRODUCT_PRICE"
],
"targetProducts": [
{
"type": "SKU",
"values": [
"1000000123"
]
}
],
"listType": "GLOBAL_EXCLUSION"
}
'import requests
url = "https://api.fabric.inc/v3/product-exclusion-lists/{id}"
payload = {
"name": "Gucci handbags",
"startAt": "2022-05-04T09:23:51.459Z",
"endAt": "2099-12-31T00:00:00.000Z",
"scopes": ["PRODUCT_PRICE"],
"targetProducts": [
{
"type": "SKU",
"values": ["1000000123"]
}
],
"listType": "GLOBAL_EXCLUSION"
}
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({
name: 'Gucci handbags',
startAt: '2022-05-04T09:23:51.459Z',
endAt: '2099-12-31T00:00:00.000Z',
scopes: ['PRODUCT_PRICE'],
targetProducts: [{type: 'SKU', values: ['1000000123']}],
listType: 'GLOBAL_EXCLUSION'
})
};
fetch('https://api.fabric.inc/v3/product-exclusion-lists/{id}', 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/product-exclusion-lists/{id}",
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([
'name' => 'Gucci handbags',
'startAt' => '2022-05-04T09:23:51.459Z',
'endAt' => '2099-12-31T00:00:00.000Z',
'scopes' => [
'PRODUCT_PRICE'
],
'targetProducts' => [
[
'type' => 'SKU',
'values' => [
'1000000123'
]
]
],
'listType' => 'GLOBAL_EXCLUSION'
]),
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/product-exclusion-lists/{id}"
payload := strings.NewReader("{\n \"name\": \"Gucci handbags\",\n \"startAt\": \"2022-05-04T09:23:51.459Z\",\n \"endAt\": \"2099-12-31T00:00:00.000Z\",\n \"scopes\": [\n \"PRODUCT_PRICE\"\n ],\n \"targetProducts\": [\n {\n \"type\": \"SKU\",\n \"values\": [\n \"1000000123\"\n ]\n }\n ],\n \"listType\": \"GLOBAL_EXCLUSION\"\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/product-exclusion-lists/{id}")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Gucci handbags\",\n \"startAt\": \"2022-05-04T09:23:51.459Z\",\n \"endAt\": \"2099-12-31T00:00:00.000Z\",\n \"scopes\": [\n \"PRODUCT_PRICE\"\n ],\n \"targetProducts\": [\n {\n \"type\": \"SKU\",\n \"values\": [\n \"1000000123\"\n ]\n }\n ],\n \"listType\": \"GLOBAL_EXCLUSION\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/product-exclusion-lists/{id}")
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 \"name\": \"Gucci handbags\",\n \"startAt\": \"2022-05-04T09:23:51.459Z\",\n \"endAt\": \"2099-12-31T00:00:00.000Z\",\n \"scopes\": [\n \"PRODUCT_PRICE\"\n ],\n \"targetProducts\": [\n {\n \"type\": \"SKU\",\n \"values\": [\n \"1000000123\"\n ]\n }\n ],\n \"listType\": \"GLOBAL_EXCLUSION\"\n}"
response = http.request(request)
puts response.read_body{
"id": "614b58924e92f6861ac9d43b",
"name": "Gucci handbags",
"startAt": "2022-05-04T09:23:51.459Z",
"endAt": "2099-12-31T00:00:00.000Z",
"scopes": [
"PRODUCT_PRICE"
],
"listType": "GLOBAL_EXCLUSION",
"createdAt": "2019-08-20T14:15:22.000Z",
"updatedAt": "2019-08-20T14:15:22.000Z",
"isDeleted": false
}{
"type": "SKU_LIST_TITLE_EXISTS",
"message": "Product exclusion list with this name already exists"
}{
"type": "UNAUTHORIZED",
"message": "Invalid credentials"
}{
"type": "SKU_LIST_NOT_FOUND",
"message": "Product exclusion List not found."
}{
"type": "INTERNAL_SERVER_ERROR",
"message": "Internal server error"
}Update a specific product exclusion list
Update a specific product exclusion list record by ID.
curl --request PUT \
--url https://api.fabric.inc/v3/product-exclusion-lists/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"name": "Gucci handbags",
"startAt": "2022-05-04T09:23:51.459Z",
"endAt": "2099-12-31T00:00:00.000Z",
"scopes": [
"PRODUCT_PRICE"
],
"targetProducts": [
{
"type": "SKU",
"values": [
"1000000123"
]
}
],
"listType": "GLOBAL_EXCLUSION"
}
'import requests
url = "https://api.fabric.inc/v3/product-exclusion-lists/{id}"
payload = {
"name": "Gucci handbags",
"startAt": "2022-05-04T09:23:51.459Z",
"endAt": "2099-12-31T00:00:00.000Z",
"scopes": ["PRODUCT_PRICE"],
"targetProducts": [
{
"type": "SKU",
"values": ["1000000123"]
}
],
"listType": "GLOBAL_EXCLUSION"
}
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({
name: 'Gucci handbags',
startAt: '2022-05-04T09:23:51.459Z',
endAt: '2099-12-31T00:00:00.000Z',
scopes: ['PRODUCT_PRICE'],
targetProducts: [{type: 'SKU', values: ['1000000123']}],
listType: 'GLOBAL_EXCLUSION'
})
};
fetch('https://api.fabric.inc/v3/product-exclusion-lists/{id}', 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/product-exclusion-lists/{id}",
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([
'name' => 'Gucci handbags',
'startAt' => '2022-05-04T09:23:51.459Z',
'endAt' => '2099-12-31T00:00:00.000Z',
'scopes' => [
'PRODUCT_PRICE'
],
'targetProducts' => [
[
'type' => 'SKU',
'values' => [
'1000000123'
]
]
],
'listType' => 'GLOBAL_EXCLUSION'
]),
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/product-exclusion-lists/{id}"
payload := strings.NewReader("{\n \"name\": \"Gucci handbags\",\n \"startAt\": \"2022-05-04T09:23:51.459Z\",\n \"endAt\": \"2099-12-31T00:00:00.000Z\",\n \"scopes\": [\n \"PRODUCT_PRICE\"\n ],\n \"targetProducts\": [\n {\n \"type\": \"SKU\",\n \"values\": [\n \"1000000123\"\n ]\n }\n ],\n \"listType\": \"GLOBAL_EXCLUSION\"\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/product-exclusion-lists/{id}")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Gucci handbags\",\n \"startAt\": \"2022-05-04T09:23:51.459Z\",\n \"endAt\": \"2099-12-31T00:00:00.000Z\",\n \"scopes\": [\n \"PRODUCT_PRICE\"\n ],\n \"targetProducts\": [\n {\n \"type\": \"SKU\",\n \"values\": [\n \"1000000123\"\n ]\n }\n ],\n \"listType\": \"GLOBAL_EXCLUSION\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/product-exclusion-lists/{id}")
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 \"name\": \"Gucci handbags\",\n \"startAt\": \"2022-05-04T09:23:51.459Z\",\n \"endAt\": \"2099-12-31T00:00:00.000Z\",\n \"scopes\": [\n \"PRODUCT_PRICE\"\n ],\n \"targetProducts\": [\n {\n \"type\": \"SKU\",\n \"values\": [\n \"1000000123\"\n ]\n }\n ],\n \"listType\": \"GLOBAL_EXCLUSION\"\n}"
response = http.request(request)
puts response.read_body{
"id": "614b58924e92f6861ac9d43b",
"name": "Gucci handbags",
"startAt": "2022-05-04T09:23:51.459Z",
"endAt": "2099-12-31T00:00:00.000Z",
"scopes": [
"PRODUCT_PRICE"
],
"listType": "GLOBAL_EXCLUSION",
"createdAt": "2019-08-20T14:15:22.000Z",
"updatedAt": "2019-08-20T14:15:22.000Z",
"isDeleted": false
}{
"type": "SKU_LIST_TITLE_EXISTS",
"message": "Product exclusion list with this name already exists"
}{
"type": "UNAUTHORIZED",
"message": "Invalid credentials"
}{
"type": "SKU_LIST_NOT_FOUND",
"message": "Product exclusion List not found."
}{
"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.
24x-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.
"12"
A unique request ID.
"263e731c-45c8-11ed-b878-0242ac120002"
Path Parameters
Product exclusion list ID
"614b58924e92f6861ac9d43b"
Body
Product exclusion list record detail
Product exclusion list name
"Gucci handbags"
Start date of product exclusion list. The value must be in the future.
"2022-05-04T09:23:51.459Z"
End date of product exclusion list. The value must be greater than the start date.
"2099-12-31T00:00:00.000Z"
Applicable scope of product exclusion list. It's used to identify whether to exclude discounts on the SKU price or associated shipping price.
Scope to exclude discounts for the product exclusion list
PRODUCT_PRICE, SHIPPING_PRICE Products to exclude from being discounted
Show child attributes
Show child attributes
Product exclusion list type
GLOBAL_EXCLUSION "GLOBAL_EXCLUSION"
Response
OK
Product exclusion list details
Product exclusion list ID
"614b58924e92f6861ac9d43b"
Product exclusion list name
"Gucci handbags"
Start date of the product exclusion list. The value must be in the future.
"2022-05-04T09:23:51.459Z"
End date of product exclusion list. The value must be greater than the start date.
"2099-12-31T00:00:00.000Z"
Applicable scope of product exclusion list. It's used to identify whether to exclude discounts on the SKU price or associated shipping price or both.
Scope to exclude discounts for the product exclusion list
PRODUCT_PRICE, SHIPPING_PRICE Product exclusion list type
GLOBAL_EXCLUSION "GLOBAL_EXCLUSION"
Record's creation time
"2019-08-20T14:15:22.000Z"
Record's last updated time
"2019-08-20T14:15:22.000Z"
true: Record is deleted
false: Record isn't deleted
false
Was this page helpful?
