This endpoint is used to query the entire Shoppable catalog against the given keywords. Users have the ability to...
Shoppable v5 Catalog Call
Overview
- filter results by brand and merchant.
- Paginate the response
- Get product details like description, images, color, and size information.
API EndPoint
POST: https://cloud.shoppable.com/catalog
Authentication
Authentication is done with two headers in the request header. Both the bearer token and x-shoppable-secret will be provided to you by your Customer Success Manager at Shoppable.
Request Headers
"Authorization": “Bearer <Bearer token that will be provided by shoppable>”,
"x-shoppable-secret": “<Shoppable Secret will be provided by shoppable>”
"Content-Type": "application/json"
Request Header authorization parameters when generating your request along with context
Name |
Description |
Authorization |
Unique token that allows access to authorized users to make calls against the Catalog API. |
|
Unique identifier string that together with the authorization bearer, validates the bearer token |
Request Body
Requests must be in application/json format and must contain the following variables.
Name |
Description |
pageSize (string) |
How many products should be fetched at once |
page (string) |
The current page for paginating. |
query (string) |
The term or upc to find products (include trailing space for more results) |
brand (Array) |
Optional parameter to narrow down by brand |
retailers (Array) |
Optional parameter to narrow down by retailer |
deepPaging (boolean) |
To indicate whether to deep paging during query |
{
"pageSize": "12",
"page": "0",
"query": "Shirt ",
"brand": ["Nike"],
"retailers": ["Target"],
"deepPaging": false
}
Response
On a successful call you will receive the following data.
Name |
Description |
totalCount |
Total possible results |
totalPages |
Total number of pages |
page (Number) |
Current page of results |
products (Array) |
Array of products returned from the API |
brands (Array) |
Array of all brands listed for the products |
merchants (Array) |
Array of all merchants for the products |
status (Number) |
Indicates success of API call (0 or 1) |
Products
name (string) |
Name of the Product |
availableVariations (Number) |
Number of variations for the product |
brand (string) |
Name of Product’s Brand |
color (string) |
Color variation of Product |
size (string) |
Size variation of Product |
status (number) |
Product Availability (In Stock/Out of Stock) |
category (string) |
Category of Product |
retail_price (string) |
Listed price of the product |
description_long |
Description of the Product |
url (string) |
Product Detail Page link |
UPC |
Unique Product Code number used to identify products from different retailers |
merchantSku |
Unique product identifier, usually provided by Product manufacturer |
image (string) |
Primary image of Product |
additional_images (Array) |
Array of additional images for the product |
merchant (string) |
Name of Product’s Merchant |
isMyProduct (Boolean) |
If the product is listed in MyProducts |
commission (String) |
Commission rate for the product |
maxQuantity |
Max number threshold of the Product that can be added to the cart |
freeShipping |
Cart total threshold that must be reached to qualify for free shipping |
shipping (number) |
Shipping charge of the Product (If free shipping threshold is not reached) |
merchantLogo |
Merchant Logo for Product |
{
"totalCount": Number,
"pageCount": Number,
"page": Number,
"products": [{
{
"id": String,
"name": String,
"availableVariants": Number,
"brand": String,
"color": String,
"size": String,
"status": Boolean,
"category": String,
"retail_price": String,
"priceRange": String,
"description_long": String,
"url": String,
"upc": String",
"merchantSku": String",
"image": String,
"additional_images": Array,
"merchant": String,
"isMyProduct": Boolean,
"commission": String,
"maxQuantity": Number,
"freeShipping": String,
"shipping": String,
"merchantLogo": String
}
}],
"brands": Array,
"merchants": Array,
"status": Number
}