Discover/Skroutz API
live

Skroutz APIskroutz.gr

Access Skroutz.gr product data via API: search products, browse categories, compare store prices, track price history, and read user reviews across Greek retailers.

Endpoint health
verified 7h ago
get_all_categories
get_category_products
search_products
get_price_history
get_product_reviews
6/7 passing latest checkself-healing
Endpoints
7
Updated
26d ago

What is the Skroutz API?

The Skroutz.gr API covers 7 endpoints for querying product data from Greece's largest price comparison platform. Use search_products to find items by keyword, get_product_stores to retrieve per-store prices and shipping costs, or get_price_history to pull time-series pricing data across 1-month, 3-month, 6-month, and all-time windows — all returning structured JSON without needing to parse the site yourself.

Try it

No input parameters required.

api.parse.bot/scraper/f51372c8-2856-4aef-972a-050ad42a3f9a/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/f51372c8-2856-4aef-972a-050ad42a3f9a/get_all_categories' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace skroutz-gr-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Skroutz.gr SDK — search products, compare store prices, read reviews."""
from parse_apis.skroutz_gr_api import Skroutz, ProductNotFound

client = Skroutz()

# Search for laptops — limit caps total items fetched.
product = client.productsummaries.search(query="laptop", limit=1).first()
print(f"Found: {product.name} (SKU: {product.sku_id})")

# Drill down to full product details via the summary's navigation op.
detail = product.details()
print(f"Product URL: {detail.url}")
print(f"Specs: {detail.specs}")

# List stores selling this product with prices.
for store in detail.stores.list(slug=detail.slug, limit=3):
    print(f"  Store: {store.shop_name} — €{store.price} + €{store.shipping_cost} shipping")

# Read user reviews for the product.
for review in detail.reviews.list(limit=3):
    print(f"  Review by {review.author}: {review.rating}★ — {review.text}")

# Browse categories and list products in one.
cat = client.categories.list(limit=1).first()
for p in cat.products(slug="kinhta-thlefwna", limit=3):
    print(f"  Category product: {p.name} ({p.sku_id})")

# Get price history for a product.
history = client.pricehistories.get(sku_id=detail.sku_id, slug=detail.slug)
print(f"Price history — min: {history.min_price}, popularity: {history.popularity}")

# Typed error handling for a missing product.
try:
    bad = client.productsummaries.search(query="nonexistent_xyz_999", limit=1).first()
    if bad:
        bad.details()
except ProductNotFound as exc:
    print(f"Product not found: {exc.sku_id}")

print("Exercised: search / details / stores.list / reviews.list / categories.list / products / pricehistories.get")
All endpoints · 7 totalmissing one? ·

Get all top-level product categories from the navigation menu. Returns a flat list of category objects each carrying an ID, Greek display name, and canonical URL. Use category IDs and slugs to feed get_category_products.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "categories": "array of category objects with id, name, and url"
  },
  "sample": {
    "data": {
      "categories": [
        {
          "id": "407",
          "url": "https://www.skroutz.gr/c/407/oikiaka-klimatistika-inverter.html",
          "name": "Κλιματιστικά"
        },
        {
          "id": "40",
          "url": "https://www.skroutz.gr/c/40/kinhta-thlefwna.html",
          "name": "Κινητά"
        }
      ]
    },
    "status": "success"
  }
}

About the Skroutz API

Categories and Product Discovery

get_all_categories returns the top-level navigation taxonomy as an array of objects, each with an id, name, and url. Pass a category's slug and category_id to get_category_products to page through its listings. The response includes a products array of SKU objects (each with sku_id, name, slug, and url) plus a count field for the total result set. Alternatively, search_products accepts a free-text query and returns a matching results array with the same SKU-level fields.

Product Details and Specifications

get_product_details takes a sku_id and slug — both available from search or category results — and returns the full specs object alongside the product name and canonical url. The specs field exposes structured technical attributes as key-value pairs (e.g. processor, RAM, display size) that vary by product category.

Pricing, Store Availability, and History

get_product_stores returns a stores array for a given sku_id, including each seller's price, shipping cost, and stock availability, as well as aggregate fields total_shops and min_price. Optionally providing slug improves shop name resolution in the response. get_price_history returns three time-series graph objects — min_price, popularity, and shop_count — across standard time windows, making it straightforward to detect price trends or demand shifts for a product.

User Reviews

get_product_reviews retrieves the review list for a product, with each entry in the reviews array carrying the author name, date, rating, review text, and helpfulness signals. The count field reflects the total number of reviews on record for that SKU.

Reliability & maintenanceVerified

The Skroutz API is a managed, monitored endpoint for skroutz.gr — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when skroutz.gr changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official skroutz.gr API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
7h ago
Latest check
6/7 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a price-drop alert tool by polling get_product_stores for min_price changes on tracked SKUs.
  • Visualize price trends over time using get_price_history min_price and shop_count time-series data.
  • Aggregate competitive pricing intelligence across Greek e-commerce retailers for a specific product category.
  • Populate a product catalog with structured specs by querying get_product_details for each SKU.
  • Analyze consumer sentiment on Greek electronics or appliances by collecting reviews via get_product_reviews.
  • Mirror Skroutz category taxonomy into a localized shopping app using get_all_categories and get_category_products.
  • Track retailer count fluctuation over time using the shop_count series from get_price_history.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Skroutz.gr have an official developer API?+
Yes. Skroutz operates an official API documented at https://developer.skroutz.gr/. It requires approved API credentials and is primarily oriented toward partner retailers and affiliate use cases, with approval being selective. This Parse API provides structured access to the same product, pricing, and review data without requiring partner approval.
What does `get_product_stores` return, and how does it differ from `get_price_history`?+
get_product_stores returns a snapshot of current seller-level data: the full stores array with individual shop prices, shipping costs, and availability, plus aggregate fields total_shops and min_price. get_price_history does not show individual stores — it returns aggregate time-series objects (min_price, popularity, shop_count) over historical windows (1 month, 3 months, 6 months, all time), suitable for trend analysis rather than real-time purchase decisions.
Does the API cover seller profile pages or store-level ratings?+
Not currently. The API returns store names, prices, and shipping costs through get_product_stores, but dedicated seller profile data — such as store-level review scores or fulfillment metrics — is not exposed. You can fork this API on Parse and revise it to add a store-detail endpoint covering that data.
Is pagination supported across all listing endpoints?+
get_category_products accepts an optional page parameter for paginating through category listings, and its response includes a count field so you can calculate total pages. search_products and get_product_reviews do not currently expose pagination parameters — they return the available result set for the given query or SKU in a single response.
Does the API cover product data outside Greece, such as Skroutz's operations in other markets?+
The API is scoped to skroutz.gr, which serves the Greek market. Product names, category slugs, and some specification labels are in Greek. Data from regional variants or partner sites is not currently covered. You can fork this API on Parse and revise it to point at a different regional domain if needed.
Page content last updated . Spec covers 7 endpoints from skroutz.gr.
Related APIs in EcommerceSee all →
verkkokauppa.com API
Search and browse products from Verkkokauppa.com to find items across categories, check real-time prices and availability, read customer reviews, and discover deals in outlet and clearance sections. Filter products by your preferences and get detailed product information including specifications and store stock levels.
catalog.onliner.by API
Search and compare products from Onliner.by's catalog with access to real-time prices, detailed product information, customer reviews, and historical price trends. Browse categories, get autocomplete suggestions, and view all available offers for any product to make informed purchasing decisions.
emag.ro API
Access product data from eMAG.ro, Romania's largest online retailer. Search by keyword, browse categories, retrieve product details and reviews, and look up seller information.
shpock.com API
Search and browse products listed on Shpock.com, view detailed listing information and seller profiles, and explore all available marketplace categories. Find what you're looking for by searching inventory, checking seller histories, and discovering related items from individual merchants.
ozon.ru API
Access data from ozon.ru.
x-kom.pl API
Access product data from x-kom.pl, a major Polish electronics retailer. Search products by keyword or category, retrieve detailed product pages, customer reviews, Q&A, promotions, flash deals, and physical store locations.
argos.co.uk API
argos.co.uk API
aliexpress.com API
Search for products across AliExpress and instantly access detailed information including product specs, customer reviews, and pricing to make informed purchasing decisions. Browse through product categories and retrieve complete product data directly from URLs to compare options and find exactly what you're looking for.