Override the Accept-Language header
Allowed values:defrit
The status query parameter allows to filter by status and enables fetching future prices.
Allowed values:all
Example:[ "" ]
This endpoint retrieves currently valid store prices for a specified product. By default, only currently valid prices will be fetched. However, future store prices can also be retrieved by using the status=all query parameter.
Override the Accept-Language header
Allowed values:defrit
The status query parameter allows to filter by status and enables fetching future prices.
Allowed values:all
Example:[ "" ]
The ID of the product.
Example:204002600400
The ID of the store.
Example:0034300
Array of prices
Price of a product in certain timeframe. It can be with or without discount.
BasePrice describes the base price for a single item of the product
Example:1.1
BasePriceQuantity describes the unit quantity for the BasePrice
Example:500
BasePriceUnit describes the unit for the BasePrice (e.g “G”, “ST”, “L” etc.)
Example:G
Represents discount data gathered from different sources.
IsDailyPrice (Tagespreis) indicates that there are multiple prices for a product across different regions or even within stores in the same region. Therefore, to display the correct price for a product, we must consider the specific region or store context.
Example:true
IsDiscount indicates if this price is a discounted price.
Example:true
OriginalBasePrice describes the original non-discounted base price for a single item of the product. This is set only when its a discounted price
Example:1.1
OriginalPrice is the price without a discount. This is set only when price is a discounted price
Example:11
Price is the Product price
Example:5.5
Quantity describes the number of items one gets for the price
Example:1
Region describes the places where the prices are valid
Allowed values:gmaagmzhgmosgmvdgmgegmnfgmbsgmlugmtigmvsnational
Example:gmzh
StoreID is the identifier for the store
Example:0033000
Unit describes the unit for quantity (e.g “CU”, “KG” etc.)
Example:CU
ValidFrom indicates the start date when the price is valid
Example:2024-05-07T00:00:00+02:00
ValidTo indicates the end date when the price becomes invalid
Example:2024-05-13T23:59:59+02:00
This endpoint retrieves currently valid regional prices for a specified product. If no regional price for a region is found, the national price will be used as a fallback. Priority of prices is also taken into account. E.g. a discounted takes precedence over non-discounted prices and multiple applicable discounts get prioritised.
Override the Accept-Language header
Allowed values:defrit
The regions parameter filters for one or more specific regions. When set, only data these regions will be returned. If the price of a requested region is not available, national price will be used as a fallback.
Both, the "explode"ed and the un"explode"ed variants are supported, so ?regions=gmaa,national and ?regions=gmaa®ions=national are equivalent.
Allowed values:gmaagmzhgmosgmvdgmgegmnfgmbsgmlugmtigmvsnational
The ID of the product.
Example:204002600400
Array of prices
Price of a product in certain timeframe. It can be with or without discount.
BasePrice describes the base price for a single item of the product
Example:1.1
BasePriceQuantity describes the unit quantity for the BasePrice
Example:500
BasePriceUnit describes the unit for the BasePrice (e.g “G”, “ST”, “L” etc.)
Example:G
Represents discount data gathered from different sources.
IsDailyPrice (Tagespreis) indicates that there are multiple prices for a product across different regions or even within stores in the same region. Therefore, to display the correct price for a product, we must consider the specific region or store context.
Example:true
IsDiscount indicates if this price is a discounted price.
Example:true
OriginalBasePrice describes the original non-discounted base price for a single item of the product. This is set only when its a discounted price
Example:1.1
OriginalPrice is the price without a discount. This is set only when price is a discounted price
Example:11
Price is the Product price
Example:5.5
Quantity describes the number of items one gets for the price
Example:1
Region describes the places where the prices are valid
Allowed values:gmaagmzhgmosgmvdgmgegmnfgmbsgmlugmtigmvsnational
Example:gmzh
StoreID is the identifier for the store
Example:0033000
Unit describes the unit for quantity (e.g “CU”, “KG” etc.)
Example:CU
ValidFrom indicates the start date when the price is valid
Example:2024-05-07T00:00:00+02:00
ValidTo indicates the end date when the price becomes invalid
Example:2024-05-13T23:59:59+02:00
This endpoint allows to query the set of Discounts with a wide variety of criteria (e.g. region, state, …). Multiple filters are combined by AND logic. Without any query parameter all discounts in all regions will be returned.
If a discount is valid in more than one region it is returned multiple times in the response, once for each region (note that the data inside a discount may vary from region to region). This behaviour is different from the old MAPI. If you are interested only in Discount Bundles you can select them with the ‘bundles_only’ parameter (but see below).
Both, the "explode"ed and the un"explode"ed variants for array query parameters are supported, so ?regions=gmaa,national and ?regions=gmaa®ions=national are equivalent.
Override the Accept-Language header
Allowed values:defrit
The id parameter allows to query one or more discounts via their ID (actually the Bundle ID).
The region parameter filters for one or more specific regions.
Allowed values:nationalgmaagmzhgmosgmvdgmgegmnfgmbsgmlugmtigmvs
The event_id parameter allows to select discounts belonging to a specific event. (Note: Combining this parameter with event_tactic or event_tactic_type is technically possible but probably useless)
Example:609237
The event_tactic parameter allows to select discounts based on their event tactic. Since an event tactic is a subcategory of an event tactic type, they should be used together. For instance, an event tactic with ID ‘2’ can be a subcategory of multiple event tactic types. Only by combining both event_tactic_type and event_tactic, you get the complete information about tactic.
(Note: Combining this parameter with event_id is technically possible but probably useless)
Example:52
The event_tactic_type parameter allows to select discounts based on their event tactic-type. Since an event tactic is a subcategory of an event tactic type, they should be used together. For instance, an event tactic with ID ‘2’ can be a subcategory of multiple event tactic types. Only by combining both event_tactic_type and event_tactic, you get the complete information about tactic.
(Note: Combining this parameter with event_id is technically possible but probably useless)
Example:900
The campaign_idparameter allows to select discounts belonging to a specific campaign.
The state parameter allows to only select Discounts in a specific state, whether it is in drafting (not published yet), published (but not valid yet), currently valid or terminated (not valid anymore). This state is calculated based on the publication, valid-from and valid-to dates.
Allowed values:draftpublishedcurrentterminated
Example:current
The distribution_channelparameters allows to select discount belonging to a specific distributionChannel.id.
Allowed values:SM/VMGASTROMP/VOIMRT_SM/VMTA
The role parameter allows to select discounts by by one or several roleId(s).
Allowed values:1000000005100000000710000000081000000009100000001110000000142000000001200000000220000000032000000005
The advertisement_type parameter allows to select discount via their advertisementTypeId.
Allowed values:12345678910
Example:3
The type parameter allows to select discounts via their typeId.
Allowed values:001002003004005007
Example:004
The reduction parameter allows to select discounts by their reductionTypeId.
Allowed values:01020405060708
Example:07
Search description field of discount for all search terms provided.
Only letters and digits are considered while searching and search terms with less than three characters are ignored. This filter is supposed to be used by humans, not by machines.
Example:compote pommes
If set to true: return only the designated bundle discount (typically the national discount).
Attention: Setting bundles_only=true will suppress all bundles/discounts that do not have designated discount data for the bundle as whole.
The boss_bw allows to select discounts for specific bossBW number. bossBW is the world code prefix for Boss number.
Example:04
The boss_bb allows to select discounts for specific bossBB number. bossBB is the area (bereich) code prefix for Boss number.
Example:02
Array of all discounts
Represents discount data gathered from different sources.
AdvertisementTypeID describes how the discount should be visualized
Example:2
Amount is relative or absolute reduction amount to the price (e.g. 20%, 4.0)
Example:30%
ArticleHint is the additional information about the Discount and related Products
Example:Angebot gilt nur vom 24.1. bis 31.8.2023, solange Vorrat.
Badge for the Discount (e.g. 40%, 30% in PNG and SVG format)
bossBB is the area (bereich) code prefix for Boss number
Example:02
bossBW is the world code prefix for Boss number
Example:04
Campaigns holds campaign data for a discount
CumulusPoints one receives with this Discount
Description is a short text about the Discount (e.g. Alle Trauben im Offenverkauf)
Example:Duftkerze im Glas
Disclaimer contains text about exceptions, validity and special conditions
Example:[ "" ]
ID is the Discount identifier
Example:1042893
DistributionChannel describes by which retailer this Discount is accepted (e.g. SM/VM for supermarkets, MR for Migros Restaurant, …)
Events holds event data for a discount
Hint is an example of a reduction in text form
Example:[ "" ]
Image is the main image referring to the Discount in JPG format
InsteadOf is used for specific use-cases, where we need another word for “statt”
Example:[ "" ]
Collective describes whether this Discount is applied to more than one product (e.g. alle Fondues)
Example:true
HighPerformer describes whether this Discount has high importance due to high sales volume
Example:true
LastImported is a timestamp of last processing of data
Example:2024-05-15T04:17:15.000973132+02:00
Logo image related to this Discount (e.g. logo for “Migros Bio” or for “UTZ Certified”)
MinimumPieces describes how many pieces must be bought for the Discount to apply
OriginalPrice is the non-discounted price. This is based on discount reference product.
Example:11
Price is the discounted price. This is based on discount reference product price.
Example:5.5
Priority tells us which Discount should be used if there are multiple Discounts active at the same time for the same product. The lower the number, the higher the priority.
Example:6
PublicationDate describes when this Discount is allowed to be published to customers
Example:2022-12-25T00:00:00+01:00
Reduction contains information about the price reduction
ReductionTypeID tells us whether it’s a 01=relativ, 02=absolut, … reduction
Example:05
ReferenceProductID is the main Product which this Discount refers to (“Hauptwerbeartikel”)
Example:243140560000
Region defines the regional context (e.g. national, gmzh, gmaa, gmlu, …)
Example:national
RoleID holds further information regarding the “type” of a Discount (e.g. high-performer, weekend-promotion, liquidation)
Example:1000000008
RoleLabel is a descriptive string for the value in RoleID
Example:Sortimentskompetenz (SORT)
SecondaryImage is the secondary image referring to the Discount
SecondaryLogo image related to this Discount (e.g. logo for “BIO SUISSE” etc.)
Signet is the image related to Cumulus Discount (e.g. image for “20x Cumulus”)
Transparent is the main image referring to the Discount in PNG format
Type describes which type of discount we got (e.g. aktion, neuheit, …)
Example:aktion
TypeID is the discount type identifier (e.g. 001, 005, …)
Example:[ "" ]
TypeLabel is the name for discount TypeID
Example:NUG Nimm X Artikel
ValidFrom is the date when this Discount becomes valid/active
Example:2024-05-07T00:00:00+02:00
ValidTo is the date till this Discount is valid/active
Example:2024-05-13T23:59:59+02:00