🇨🇭 Migros Switzerland REST API JSON

Migros API — Real-Time Switzerland Grocery Data

Access Migros Switzerland's complete grocery catalog via the Pepesto API — live pricing in CHF, nutritional data, and availability from migros.ch, returned as clean JSON.

Daily Catalog indexed
From €0.01 Per request, no subscription
25+ Chains on one schema

What Does the Migros API Return?

Everything visible in the Migros app and website, returned as clean JSON via a single REST call.

Product name
Current price (CHF)
Unit price (per 100g / per litre)
Promotional / sale price
Availability status
Category path (full hierarchy)
Product images
Ingredients list
Allergen information
Nutritional values (per 100g & per serving)
Brand
Pack size / weight

Migros-specific: Product names are available in German, French, and Italian as displayed on migros.ch.


Why Use an API Instead of Building Your Own Migros Integration?

Developers who have tried to build their own Migros data pipeline know the obstacles. Unofficial workarounds exist, but they come with real costs.

🔧
No maintenance burden

Migros updates their website regularly — changing markup, adding rate limiting, or restructuring categories. Pepesto absorbs all of that. Your integration keeps working.

📐
Consistent schema across all 25+ chains

The same JSON field names work whether you're calling Migros, Albert Heijn, Tesco, or any other supported chain. One integration for all of Europe.

Faster time to market

Calling a REST API takes hours. Building, maintaining, and scaling your own Migros data extraction takes months — and requires ongoing engineering resources.

🛡️
Reliable uptime

DIY data extraction is fragile: a single layout change can silently break your pipeline. Pepesto monitors and updates integrations continuously so you don't have to.


Fetch Migros Products in One Request

A single authenticated POST to /api/catalog returns the full structured product catalog from Migros.

Request — cURL
curl -X POST https://s.pepesto.com/api/catalog \
  -H "Authorization: Bearer $PEPESTO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"supermarket_domain": "migros.ch"}'
Response — JSON (truncated)
{
  "supermarket_domain": "migros.ch",
  "products": [
    {
      "name":         "Barilla Penne Rigate 500g",
      "brand":        "Barilla",
      "pack_size":    "500g",
      "price":        1.89,
      "unit_price":   0.38,
      "unit_label":   "per 100g",
      "promo_price":  1.49,
      "availability": "in_stock",
      "category":     "Pasta & Rice / Pasta / Penne",
      "nutrition": {
        "energy_kcal": 352,
        "protein_g":   12.5,
        "carbs_g":     70.5,
        "fat_g":       1.5
      }
    }
  ]
}
Full API Reference →

What Can You Build?

The Migros API gives your product a live data layer on top of one of Switzerland's leading grocery retailers.

Use case
Grocery price comparison

Compare Migros prices against other Switzerland retailers in real time. Flag promotions, track price history, and surface the best deal per product.

Use case
Grocery budget tracker

Let users build a weekly shopping list and see the exact Migros cost — including any active promotional prices — before they shop.

Use case
Meal planning with live prices

Match recipe ingredients to real Migros products and show the true cost of cooking from a given menu. Drive grocery orders directly from your meal planner.

Use case
Nutrition & diet apps

Access structured nutritional data — calories, macros, allergens — for the exact products sold at Migros. Power food logging and dietary tracking with real supermarket data.

Use case
Retail shelf analytics

Monitor Migros's product range, pricing strategy, and promotional cadence at scale. Track SKU introductions, price changes, and out-of-stock events over time.

Use case
AI grocery agents

Give your AI agent the ability to search Migros's catalog, compare products by price or nutrition, and place grocery orders — all programmatically via REST.


Coverage & Data Freshness

Covers migros.ch — the Migros Switzerland online grocery store. Product availability reflects the Swiss market with pricing in CHF. The integration covers migros.ch and does not extend to partner stores within Migros-operated malls.

🌍
Country coverage

Switzerland — migros.ch. Pricing in CHF.

🔄
Refresh cadence

Daily. Promotional prices and weekly deals are included in every update cycle.

📦
What's included

All products listed online at migros.ch — including active promotions and full product details.

All product data and pricing is sourced from publicly listed pages on migros.ch. Pepesto does not access retailer-gated pricing or any data not visible to a regular visitor. Products shown at a lower price due to a promotion or budget-tier range are included because they appear publicly on the site — not through any special retailer agreement.


How to get started

Three steps. No approval process. Your first call can be running within minutes.

💳
1. Buy credits

Purchase a credit pack via Stripe. Pay-as-you-go from €0.05 per request. No monthly subscription, no minimum spend. Credits don't expire.

🔑
2. Get your API key

After purchase, call /link with your email — your API key is returned immediately. No waiting, no approval form, no account setup.

3. Start building

Make your first call to /api/catalog with chain: "migros". Full endpoint reference and example responses are in the API docs.

Buy Credits & Get Your API Key   Full API Reference →

Purchase via Stripe, then call /link with your email — your key is returned immediately. No approval process, no waiting.


Frequently Asked Questions about the Migros API

Does Migros have an official public API for developers?

Migros does not offer a public developer API. Pepesto provides a maintained API layer that normalises Migros Switzerland's product catalog from migros.ch into consistent JSON, updated daily.

What format does the Migros API response use?

Pepesto returns a unified JSON schema across all 25+ supported chains. Each Migros product object includes name, price in CHF, unit price, availability, category path, brand, and nutritional data.

How current is Migros product and pricing data?

Data from migros.ch is refreshed daily, capturing current online prices and weekly deals.

Are product names available in multiple languages for Migros?

Yes. Migros Switzerland's online store is available in German, French, and Italian. Product names are returned as displayed on migros.ch.

Does this cover Migros Switzerland only?

Yes. This integration covers migros.ch — the Swiss Migros online store. Pricing is in CHF. Migros operates exclusively in Switzerland.

How do I start using the Migros API?

Buy Pepesto API credits, retrieve your key via /link, then call /catalog with chain set to migros. Full documentation and sample responses are at pepesto.com/docs/grocery-shopping-api.

Is the Migros data available in real time?

The standard catalog is indexed daily — prices, availability, and product details are refreshed every 24 hours. If your use case requires more frequent updates or push notifications on price changes, get in touch and we can discuss what's possible.


Other Supermarkets Available on Pepesto

One API key gives you access to 25+ European grocery chains with a consistent JSON schema.


Start fetching Migros data today

Live pricing, nutritional data, and full product catalog from migros.ch — clean JSON, one API key, zero monthly commitment.

Buy credits via Stripe → call /link with your email → API key returned immediately. No approval, no waiting.

Questions? Email orders@pepesto.com or book a call.

Try Pepesto's Integration Today!

Download on App Store
Get it on Google Play

© 2026 Pepesto. All rights reserved.

Made with ❤️ in Zurich, Switzerland.