Search for content
Searches for products and returns a slice of results as well facets and hints like spelling fixes.
Query Parameters
Query string, typically the contents of a search box.
Possible values: >= 1
Default value: 1
Page of results to retrieve, starting with 1.
Possible values: >= 1 and <= 24
Default value: 24
PageSize is the number of results to return for the page.
Locale to use for i18n and l10n of content. If no locale is specified in the request, the caller's locale settings are used by default.
Possible values: [score, id, -id, price, -price, sku, -sku, vendor, -vendor, delivery_days, -delivery_days]
Sort order.
Vendor ensures that only products from a specific vendor will be returned.
Possible values: >= 1 and <= 50
Default value: 10
VendorSize allows to specify how many elements are returned at maximum for the vendor facet.
Possible values: [name, -name, count, -count]
VendorOrder specifies the sort order of the vendor facet.
Catalog filters the results to only products from the given catalog.
Possible values: >= 1 and <= 50
Default value: 10
CatalogSize allows to specify how many elements are returned at maximum for the catalog facet.
Possible values: [name, -name, count, -count]
CatalogOrder specifies the sort order of the catalog facet.
Manufacturer narrows down the results to only products from of the specified manufacturer.
Possible values: >= 1 and <= 50
Default value: 10
ManufacturerSize allows to specify how many elements are returned at maximum for the manufacturer facet.
Possible values: [name, -name, count, -count]
ManufacturerOrder specifies the sort order of the manufacturer facet.
Category narrows down the results to return only products in the specified category.
Possible values: >= 1 and <= 50
Default value: 10
CategorySize allows to specify how many elements are returned at maximum for the category facet.
Possible values: [name, -name, count, -count]
CategoryOrder specifies the sort order of the category facet.
Eclass narrows down the results to return only products with the specified eCl@ss code.
Possible values: >= 1 and <= 50
Default value: 10
EclassSize allows to specify how many elements are returned at maximum for the eCl@ss facet.
Possible values: [name, -name, count, -count]
Default value: -count
EclassOrder specifies the sort order of the eCl@ss facet.
Unspsc narrows down the results to return only products with the specified UNSPSC code.
Possible values: >= 1 and <= 50
Default value: 10
UnspscSize allows to specify how many elements are returned at maximum for the UNSPSC facet.
Possible values: [name, -name, count, -count]
Default value: -count
UnspscOrder specifies the sort order of the UNSPSC facet.
Filters the search results to return only products with the given days of delivery.
Possible values: >= 1 and <= 50
Default value: 10
LeadtimeSize allows to specify how many elements are returned at maximum for the leadtime facet.
Minimum price for the products.
Maximum price for the products.
- 200
- 400
- 401
- 429
- default
Successful search response.
Schema
- Array [
- Array [
- ]
- ]
- Array [
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
ID of the provider that returned the results. For results from local catalogs, the ID is always "local".
Name of the provider that returned the results. For results from local catalogs, the name typically is a translation of "My Catalogs".
count object required
Count holds information about the number of results found in this search. Notice that this number might be an exact value or an approximation.
Value of the count. Notice that this number might be an exact value or some lower bound, depending on the value of the Relation property.
Possible values: [eq, gte]
Default value: eq
Relation describes whether the Value property is an exact number, in which case Relation is "eq". If Relation is "gte", then the Value property is a lower bound.
data object[]
Slice of results returned.
ID represents an opaque, unique identifier for the individual search result. It is required to pass into other API endpoints, e.g. the Get Product API.
Provider of the result. For results from local catalogs, this property is always "local".
SKU is the stock-keeping unit, i.e. an identifier that uniquely references the product at the given vendor.
Name of the product.
Description is a longer textual description of the product.
Vendor name.
price object required
Price of the product per unit. In the search results, we will always return the best price for the product, if there are multiple offers. Notice that prices from local catalogs are typically net prices, i.e. they do can come with taxes excluded.
Amount of the price, i.e. its monetary value.
Currency code of the monetary value.
Formatted monetary value in the caller's locale.
Possible values: >= 1
PriceQuantity describes the packaging unit. E.g. if the price is for a "€ 1.99 per 100 KGM", the price quantity is 100.
OrderUnit describes the packaging unit. E.g. if the price is for a "€ 1.99 per 100 KGM", the order unit is "KGM".
DeliveryDays is the delivery time in days.
Manufacturer name.
Brand name.
preview object
Preview image to be used in the result list.
URL to the image.
Width of the image in pixels.
Height of the image in pixels.
Alternative Text to further describe the image.
Possible values: [thumbnail, small, medium, large]
Kind describes the size/purpose of the image.
QuantityDiscountsAvailable indicates that this product comes with a quantity-based pricing tier.
Delivery information.
Availability information.
PriceUnit returns details about the price and the packaging unit. E.g. if the price is for a single piece, PriceUnit might be something like "per EA". However, if the price is per 100 kg of something, PriceUnit might be "per 100 KGM".
PriceTaxLabel describes the tax-related details of the price in textual form.
Preferred indicates whether this product is preferred according to the buying guidelines of the organization.
Blocked indicates whether this product must be blocked according to the buying guidelines of the organization.
taxonomies object[]
Taxonomies represents the list of standard classifications like UNSPSC or eCl@ss for this product.
Possible values: [unspsc, eclass]
Type of the taxonomy.
Code in the standard classification.
Version of the standard classification.
DisplayName returns a textual form of the classification code.
dynamicPricingAvailable indicates that this product comes with a dynamic discount.
facets object[]
Possible way to filter and narrow the results by e.g. category or manufacturer.
ID represents a unique, opaque identifier for the facet at hand. Notice that consumers can use this ID in subsequent search requests to narrow down search results by facet. E.g. if you have a facet ID of "vendor", you can use this ID as a query parameter in subsequent search requests.
Name of the facet in the locale of the request. You can use this label directly in the UI.
Possible values: [single, multiple]
SelectionType indicates how values of the facet can be selected. E.g. some facets allow to select a single value only, while other allow to select multiple values at once.
parents object[]
Parents is used to return the parents in a hierarchical facets, e.g. categories.
ID represents an opaque, unique identifier for the facet value. This ID must be used by the consumer as the value of a query string for subsequent queries. E.g. if the user clicks on the facet with the ID "category" and picks the value ID of "Office", the query string must be "category=Office".
Name of the facet value at hand. The name can be directly used in the UI.
count object
Count, when returned, holds information about the number of results found for this facet. Notice that this number might be an exact value or an approximation.
Value of the count. Notice that this number might be an exact value or some lower bound, depending on the value of the Relation property.
Possible values: [eq, gte]
Default value: eq
Relation describes whether the Value property is an exact number, in which case Relation is "eq". If Relation is "gte", then the Value property is a lower bound.
Selected indicates that this facet value is currently being filtered for in the search request.
values object[]
Values of this facet. E.g. if you have a facet of type "Brand", the values represent the actual brands you can filter for: "Apple", "Microsoft", "Samsung" etc.
ID represents an opaque, unique identifier for the facet value. This ID must be used by the consumer as the value of a query string for subsequent queries. E.g. if the user clicks on the facet with the ID "category" and picks the value ID of "Office", the query string must be "category=Office".
Name of the facet value at hand. The name can be directly used in the UI.
count object
Count, when returned, holds information about the number of results found for this facet. Notice that this number might be an exact value or an approximation.
Value of the count. Notice that this number might be an exact value or some lower bound, depending on the value of the Relation property.
Possible values: [eq, gte]
Default value: eq
Relation describes whether the Value property is an exact number, in which case Relation is "eq". If Relation is "gte", then the Value property is a lower bound.
Selected indicates that this facet value is currently being filtered for in the search request.
spelling object[]
Possible spelling corrections, aka "Did you mean?"
Text of the user.
List of possible fixes.
{
"id": "string",
"name": "string",
"count": {
"value": 191,
"relation": "eq"
},
"data": [
{
"id": "CgVsb2NhbBIHNDU0NjExMCICREUqAmRlMMiEPTiM491gw",
"provider": "local",
"sku": "1000",
"name": "Apple iPad Pro 12.9 WiFi+LTE 2TB silver",
"description": "The best iPad that money can buy in 2021.",
"vendor": "SellCo",
"price": {
"amount": 2215.79,
"currency": "EUR",
"formatted": "€ 2215.79"
},
"manufacturer": "Apple",
"brand": "iPad",
"preview": {
"url": "https://example.com/images/apple-ipad-pro-silver.jpg",
"width": 500,
"height": 500,
"altText": "Front view"
},
"quantityDiscountsAvailable": true,
"delivery": "Free delivery on Black Friday",
"availability": "In Stock",
"priceUnit": "per piece",
"priceTaxLabel": "excl. taxes",
"preferred": true,
"dynamicPricingAvailable": true
}
],
"facets": [
{
"id": "vendor",
"name": "Vendor",
"selectionType": "single",
"parents": [
{
"id": "string",
"name": "string",
"count": {
"value": 191,
"relation": "eq"
},
"selected": true
}
],
"values": [
{
"id": "string",
"name": "string",
"count": {
"value": 191,
"relation": "eq"
},
"selected": true
}
]
}
],
"spelling": [
{
"text": "string",
"fixes": [
"string"
]
}
]
}
Bad request
Schema
Code to indentify the type of error, typically the HTTP status code.
Summary of the error in one sentence.
More details, e.g. validation errors on individual fields.
{
"code": 400,
"message": "Bad request parameters. Please check the parameters for this API request.",
"details": [
"Name is missing.",
"Price is negative."
]
}
Unauthorized
Schema
Code to indentify the type of error, typically the HTTP status code.
Summary of the error in one sentence.
More details, e.g. validation errors on individual fields.
{
"code": 400,
"message": "Bad request parameters. Please check the parameters for this API request.",
"details": [
"Name is missing.",
"Price is negative."
]
}
Too many requests
Schema
Code to indentify the type of error, typically the HTTP status code.
Summary of the error in one sentence.
More details, e.g. validation errors on individual fields.
{
"code": 400,
"message": "Bad request parameters. Please check the parameters for this API request.",
"details": [
"Name is missing.",
"Price is negative."
]
}
General error
Schema
Code to indentify the type of error, typically the HTTP status code.
Summary of the error in one sentence.
More details, e.g. validation errors on individual fields.
{
"code": 400,
"message": "Bad request parameters. Please check the parameters for this API request.",
"details": [
"Name is missing.",
"Price is negative."
]
}