curl --request GET \
--url https://api.fabric.inc/v3/published-products/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fabric.inc/v3/published-products/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fabric.inc/v3/published-products/{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/published-products/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.fabric.inc/v3/published-products/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fabric.inc/v3/published-products/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/published-products/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"sku": "XP-123345",
"id": "5f7329dfd5288b0011332366",
"itemId": 1682313863,
"type": "ITEM",
"categoryId": "34e7329dfd5288b0011332366",
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"variants": [
{
"sku": "XP-123345",
"id": "5f7329dfd5288b0011332366",
"itemId": 1682313863,
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
],
"bundleProducts": [
{
"quantity": 2,
"sku": "XP-123345",
"id": "5f7329dfd5288b0011332366",
"itemId": 1682313863,
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
],
"categories": [
{
"id": "5f7329dfd5288b0011332366",
"type": "PRIMARY",
"isRoot": true,
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
],
"collections": [
{
"name": "Demo Name",
"id": "5f7329dfd5288b0011332366",
"hierarchy": [
{
"id": "5f7329dfd5288b0011332366",
"type": "PRIMARY",
"isRoot": true,
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
]
}
]
}{
"message": "Request was invalid",
"type": "Bad request",
"errors": [
{
"type": "CLIENT_ERROR",
"message": "Invalid request. Unable to find/create product"
}
]
}{
"message": "Request is unauthorized",
"type": "Unauthorized request",
"errors": [
{
"type": "UNAUTHORIZED_ERROR",
"message": "The requester is unauthorized"
}
]
}{
"type": "REQUEST_DENIED",
"message": "User doesn't have the required permission"
}{
"type": "NOT_FOUND",
"message": "Provided ID doesn't exist"
}{
"message": "Payload exceeds maximum configured size",
"type": "Payload limit exceeded",
"errors": [
{
"type": "PAYLOAD_LIMIT_EXCEEDED_ERROR",
"message": "Payload exceeds maximum configured size"
}
]
}{
"message": "Internal Server Error",
"type": "Internal Server Error",
"errors": [
{
"type": "SERVER_ERROR",
"message": "Internal Server Error"
}
]
}Get Published Product by ID
Your Storefront must displays all the relevant information for shoppers to make an informed purchase decision. This endpoint gets details of a published product (item, bundle, or variant) by ID, which can be used to display product details on your Storefront. Note: If you don’t have product ID, use the corresponding SKU-based or item ID-based endpoints.
curl --request GET \
--url https://api.fabric.inc/v3/published-products/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fabric.inc/v3/published-products/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fabric.inc/v3/published-products/{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/published-products/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.fabric.inc/v3/published-products/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fabric.inc/v3/published-products/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/published-products/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"sku": "XP-123345",
"id": "5f7329dfd5288b0011332366",
"itemId": 1682313863,
"type": "ITEM",
"categoryId": "34e7329dfd5288b0011332366",
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"variants": [
{
"sku": "XP-123345",
"id": "5f7329dfd5288b0011332366",
"itemId": 1682313863,
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
],
"bundleProducts": [
{
"quantity": 2,
"sku": "XP-123345",
"id": "5f7329dfd5288b0011332366",
"itemId": 1682313863,
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
],
"categories": [
{
"id": "5f7329dfd5288b0011332366",
"type": "PRIMARY",
"isRoot": true,
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
],
"collections": [
{
"name": "Demo Name",
"id": "5f7329dfd5288b0011332366",
"hierarchy": [
{
"id": "5f7329dfd5288b0011332366",
"type": "PRIMARY",
"isRoot": true,
"localizedProperties": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
],
"attributes": [
{
"id": "5f7329dfd5288b0011332322",
"name": "color",
"value": "blue",
"type": "string"
}
]
}
]
}
]
}{
"message": "Request was invalid",
"type": "Bad request",
"errors": [
{
"type": "CLIENT_ERROR",
"message": "Invalid request. Unable to find/create product"
}
]
}{
"message": "Request is unauthorized",
"type": "Unauthorized request",
"errors": [
{
"type": "UNAUTHORIZED_ERROR",
"message": "The requester is unauthorized"
}
]
}{
"type": "REQUEST_DENIED",
"message": "User doesn't have the required permission"
}{
"type": "NOT_FOUND",
"message": "Provided ID doesn't exist"
}{
"message": "Payload exceeds maximum configured size",
"type": "Payload limit exceeded",
"errors": [
{
"type": "PAYLOAD_LIMIT_EXCEEDED_ERROR",
"message": "Payload exceeds maximum configured size"
}
]
}{
"message": "Internal Server Error",
"type": "Internal Server Error",
"errors": [
{
"type": "SERVER_ERROR",
"message": "Internal Server Error"
}
]
}Authorizations
S2S access token (JWT) from fabric Identity service (during Login)
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.
"517fa9dfd42d8b00g1o3k312"
Unique request ID
"263e731c-45c8-11ed-b878-0242ac120002"
Path Parameters
24-character system-generated product ID.
Query Parameters
true: Response shouldn't include products of the bundle
false: Response should include products of the bundle Note: Default value is false
true: Response shouldn't include collection or hierarchy details
false: Response should include collection or hierarchy details Note: Default value is false
true: Response shouldn't include categories or hierarchy details
false: Response should include categories or hierarchy details Note: Default value is false
true: Response shouldn't include categories or hierarchy details
false: Response should include categories or hierarchy detail Note: Default value is false
Locale name
Response
OK
Details of published product
Unique product ID that maps to fabric's standard attribute called SKU.
Note: sku shouldn't include ; or =
^[^;=]*$"XP-123345"
24-character system-generated product ID
"5f7329dfd5288b0011332366"
Unique identifier of an item, a variant or a bundle
1682313863
Product type
ITEM, VARIANT, BUNDLE "ITEM"
24-character system-generated category ID
"34e7329dfd5288b0011332366"
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
