Skip to content

getProducts.v1

POST
/shopgate.catalog.getProducts.v1

This pipeline gives you a (paginated) product list. It can be used to either “search” for products or the content of categories. If the categoryId parameter is set, the searchPhrase will be ignored, to search inside a category (or more categories), you have to use filters combined with a search phrase.

There are some undocumented input parameters, that are only used internally, but in theory you could use them too. These are the boolean parameters “skipHighlightLoading” and “skipLiveshoppingLoading” and will prevent the pipeline from loading there data to the products, for performance reasons or if you just don’t need these data, if you set them to true.

Media typeapplication/json
object
categoryId

The categoryId, but only “flat”, it will not “dive into” subcategories

string
searchPhrase

A search phrase to search for, not compatible with categoryId, use a category-filter, if you want to search inside categories

string
filters

The key is the filterId or name of filter, like categories, manufacturer or other attributes/options/properties like “Größe”. The value has to be an object with a values key, that holds an array of strings (the “id” from the filters-endpoint) or minimum and/or maximum integer values. If the filters object (from the filters-endpoint) delivers a source too, you have to send it too. For categories you have to give the content of the id property, which is the name/path of the category, not the category id itself.

object
key
additional properties
object
minimum

The minimum value for this filter, can not be combined with values.

integer format: int32
maximum

The maximum value for this filter, can not be combined with values.

integer format: int32
values
Array<string>
source

The value of the source property from the filters endpoint

string
offset

For pagination, you should give the position of the first product, you want to retrieve

integer format: int32
0
limit

The maximum number of products you want to retrieve

integer format: int32
default: 20 >= 1 <= 100
sort

How to sort the result, relevance will be controlled by the merchants shop-system or the import order

string
Allowed values: priceAsc priceDesc relevance random
showInactive

Only active products would be returned, it this is omitted or false, set it to true, to fetch inactive ones too

boolean
productIds

Can not be combined with filters or a searchPhrase, will retrieve specific products

Array<string>

Successful response.

Media typeapplication/json
object
output
required
object
totalProductCount

The total number of products that were found, independent of the offset or limit

integer format: int32
products
Array<object>

A basic product entity, that is used for search results or categoryviews

object
id

The unique product id of this product inside the shop (in old cake system: product_number)

string
active

If this product is active or not

boolean
availability
object
text

Text to describe the availability of this product

string
state

A kind of flag, that describes the availability state of this product

string
Allowed values: ok warning alert
identifiers
object
sku
required

Should always be used for visual representation instead of id if not explicitly given, this will be the same as id (product_number_public in cake)

string
ean

The European Article Number of this product

string
isbn

The International Standard Book Number of this product

string
upc

The Universal Product Code of this product

string
pzn

The “Pharmazentralnummer” of this product

string
mpn

The Manufacturer Product Number of this product

string
manufacturer

The manufacturer or brand of this product

string
name

The product name to display

string
stock
object
info

A custom text concerning stock (see available_text in old cake system)

string
orderable

A boolean flag that determines if the product it orderable at all

boolean
quantity

The amount of products that are available

integer format: int32
maxOrderQuantity

The maximum of amount of items that are orderable in one order

integer format: int32
minOrderQuantity

The minimu amount of items that have to be ordered of this product

integer format: int32
default: 1
ignoreQuantity

If true, this will allow the customer to buy more products than are available in stock

boolean
default: true
rating

The accumulated review data of this product

object
count

The amount of star-ratings

integer format: int32
average

The average score of the star-ratings

number format: float
>= 1 <= 100
reviewCount

The amount of reviews

integer format: int32
featuredImageUrl

The main image of this product, displayed in lists or search results

string
featuredImageBaseUrl

Base URL of the main image of this product, displayed in lists or search results. GET params for width, height, etc needs to be added.

string
price
object
tiers

A list of tier prices for this product, if available

Array<object>
object
from

The minimum order quantity for this tier to apply

integer format: int32
to

The maximum order quantity for this tier to apply

integer format: int32
unitPrice

The product price if this tier applies, already includes customer group discount

number format: float
info

Additional text which should be displayed near the price, like “12,40€/kg” (amount_info_text in old cake system)

string
unitPrice

The price in the shop’s selected currency (unit_amount_display/100 in old cake system), which already includes possible customer group discounts

number format: float
unitPriceStriked

The crossed out price in the shop’s selected currency (unit_amount_display_old/100 in old cake system)

number format: float
unitPriceMin

The price of the cheapest variant or child product in the shop’s selected currency (unit_amount_display_min/100 in old cake system), which already includes possible customer group discounts

number format: float
unitPriceMax

The price of the most expensive variant or child product in the shop’s selected currency (unit_amount_display_min/100 in old cake system), which already includes possible customer group discounts

number format: float
unitPriceNet

The net price in the shop’s selected currency (unit_amount_display/100 in old cake system)

number format: float
unitPriceWithTax

The price with tax in the shop’s selected currency (unit_amount_display/100 in old cake system)

number format: float
taxAmount

The amount of the taxes (unitPriceWithTax - unitPriceNet) in the shop’s selected currency

number format: float
taxPercent

The tax percentage for product

number format: float
msrp

The manufacturer’s suggested retail price in the shop’s selected currency

number format: float
currency

The currency code for this value

string
Allowed values: EUR CHF USD RON PLN AUD GBP CAD SEK DKK NOK
flags
object
hasChildren

A flag that determines if this product has children, they have to be loaded separately at the detail page by using getProductChildren_v1 pipeline

boolean
hasVariants

A flag that determines if this product has variants, they have to be loaded separately at the detail page by using getProductVariants_v1 pipeline

boolean
hasOptions

A flag that determines if this product has options, they have to be loaded separately at the detail page by using getProductOptions_v1 pipeline

boolean
liveshoppings

A list of liveshopping-timeframes for this product. By default it will load all timeframes, that ended in the last 7 days, are active or will start in the future.

Array<object>
object
from

The exact start-time for this liveshopping entry

string format: date-time
to

The exact end-time for this liveshopping entry

string format: date-time
highlight

True if the product is highlighted

boolean
parent
object recursive
characteristics

Special kind of characteristics which are directly label/value mappings for a certain product. Will only be applied, if the product is a variant.

Array
type

Type of the product

string
Allowed values: simple parent variant
tags
Array<string>
Example
{
"output": {
"totalProductCount": 0,
"products": [
{
"id": "string",
"active": true,
"availability": {
"text": "string",
"state": "ok"
},
"identifiers": {
"sku": "string",
"ean": "string",
"isbn": "string",
"upc": "string",
"pzn": "string",
"mpn": "string"
},
"manufacturer": "string",
"name": "string",
"stock": {
"info": "string",
"orderable": true,
"quantity": 0,
"maxOrderQuantity": 0,
"minOrderQuantity": 0,
"ignoreQuantity": true
},
"rating": {
"count": 0,
"average": 0,
"reviewCount": 0
},
"featuredImageUrl": "string",
"featuredImageBaseUrl": "string",
"price": {
"tiers": [
{
"from": 0,
"to": 0,
"unitPrice": 0
}
],
"info": "string",
"unitPrice": 0,
"unitPriceStriked": 0,
"unitPriceMin": 0,
"unitPriceMax": 0,
"unitPriceNet": 0,
"unitPriceWithTax": 0,
"taxAmount": 0,
"taxPercent": 0,
"msrp": 0,
"currency": "USD"
},
"flags": {
"hasChildren": true,
"hasVariants": true,
"hasOptions": true
},
"liveshoppings": [
{
"from": "2017-11-11T00:00:00.000Z",
"to": "2017-11-11T23:59:59.999Z"
}
],
"highlight": true,
"characteristics": [
null
],
"type": "simple",
"tags": [
"string"
]
}
]
}
}