One API. Every Marketplace, Normalized.

    Stream real-time prices, sellers, and stock changes as they happen. Built for high-volume catalogs and automated pricing systems.

    · Free tier available · Plans from €79/mo

    Designed for production

    Catalog Modeling

    Catalog-Scale Price Delivery

    Stop designing complex request logic. Model your catalog and kwery handles the heavy lifting.

    Map by GTIN/EAN

    Track SKUs across the web using standard identifiers, not just brittle URLs.

    Define Frequency

    Set refresh rates tailored to your strategy, from daily snapshots to real-time updates.

    Global Routing

    Access multiple marketplaces through one endpoint without managing individual scrapers.

    GTINs/EANs

    4006381333472
    4006381812245
    8806090123104
    0190199098712
    7613287122068
    ...
    kwery

    Marketplaces

    Amazon · DE
    Amazon · UK
    Idealo · DE
    ebay · IT
    Google Shopping · DE
    ...

    From Requests to Credits

    Now that you know how kwery resolves your catalog, here's what it costs.

    SKUs×Sources×Frequency=Credits Consumed
    1,000 SKUs×2 sources×30 fetches/month (daily)=60,000 credits/month

    Each resolved SKU-source fetch consumes one credit. Failed lookups and cache hits cost 0 credits.

    See full pricing

    Workflow

    From Request to Result

    Three steps to production-grade marketplace data.

    01

    Create a Job

    Post a batch of product identifiers to the unified /sessions endpoint. No manual queue management required.

    02

    Processing

    kwery resolves proxies, bypasses bot-detection, and normalizes all source-specific fields in real-time.

    03

    Retrieve Signals

    Poll the job ID or receive an automated Webhook once the normalized result is stored in our high-speed cache.

    Source Library

    Full Coverage, One Endpoint

    Pricing, offers, and merchant data from the marketplaces that drive your category, delivered through a single normalized API.

    On-Demand

    Don't See Your Marketplace?

    Request a new source and we'll integrate it into the API, zero downtime, unified schema.

    Request Source Expansion

    Technical Specs

    Full-Spectrum Pricing Data

    Every source returns the same normalized schema, offer lifecycle, logistics, market signals, and compliance. Sample responses across three sources.

    {
    "product_id": "B0847ZTV5Q",
    "name": "Rowenta Studio Dry Glow Haartrockner CV5830",
    "brand_name": "Rowenta",
    "currency": "EUR",
    "buybox": {
    "price": 31.19,
    "seller_name": "Amazon",
    "seller_id": "A3JWKAKR8XB7XF"
    },
    "seller_type": "amazon",
    "is_available": true,
    "rating": 90,
    "rating_count": 5471,
    "price_min": 24.69,
    "price_avg": 36.34,
    "price_max": 45.79,
    "offers_count": 13,
    "offers": [
    {
    "seller_name": "Amazon",
    "seller_type": "standalone-shop",
    "price": 31.19,
    "shipping": 3.99,
    "total": 35.18,
    "condition": "Neu"
    },
    {
    "seller_name": "Sotel",
    "seller_type": "marketplace-shop",
    "seller_rating": 88,
    "seller_rating_count": 11014,
    "price": 43.88,
    "shipping": 55.57,
    "total": 99.45,
    "condition": "Neu"
    },
    {
    "seller_name": "cyberport",
    "seller_type": "marketplace-shop",
    "seller_rating": 68,
    "seller_rating_count": 6714,
    "price": 33.74,
    "shipping": 0,
    "total": 33.74,
    "condition": "Neu"
    }
    ],
    "trust": { "score": 0.89 }
    }
    GTIN · ASIN · TERM · IDSmart URLs
    max_age=3600

    Universal Search Keys

    Query via GTIN (EAN, UPC and JAN barcodes all use this key), ASIN on Amazon, PZN on Idealo, search terms, or a marketplace product ID. Our routing layer maps identifiers to local product entities instantly.

    Control Parameters

    Customize crawl depth with max_pages or enforce strict data freshness with max_age parameters for real-time validation.

    Connectivity

    Engineered for Integration

    kwery is a versioned API built for system-to-system reliability, not a simple scraper wrapper.

    Delivery Formats

    Format negotiation

    Native JSON support (recommended) with CSV and custom formats available upon request for legacy data pipelines.

    Versioned Schema

    Code stability

    Guaranteed code stability. All job results are stored and available for retrieval for 72 hours via versioned endpoints.

    Event-Driven

    Webhooks

    Instead of constant polling, receive a POST request the moment your data is resolved into our persistent result storage.

    Predictable Billing

    Per-credit

    Per-credit pricing tied to resolved SKUs. Failed lookups and cache hits within max_age cost zero credits.

    Going Deeper

    What Is a Marketplace Data API, Exactly?

    See how collection, normalization, matching, and delivery fit together.

    Read the Explainer

    Reliability

    Architected for Scale

    Always-on pricing infrastructure for enterprise catalog refreshes.

    High-Frequency Refresh

    Live

    Continuous checks at scale. Configurable refresh rates, from daily snapshots to real-time, keep your catalog current, while detected change events surface exactly what moved between observations.

    Live throughput

    Enterprise Uptime SLA

    99.9% uptime SLA, contractually guaranteed for Enterprise customers. Every tier runs on the same redundant infrastructure just without guarantees and commitments.

    99,9%Enterprise SLA

    Explicit Error Taxonomy

    Granular visibility into request behavior with specific error codes for missing parameters and source health alerts.

    HTTP 422: MISSING_GTIN
    HTTP 503: SOURCE_TIMEOUT

    Support

    Common Technical Questions

    What teams ask before they integrate: coverage, call model, freshness, credits and uptime. Full answers live in the knowledgebase.

    Browse all FAQs

    Twelve sources today: Amazon, Google Shopping, ebay, Idealo, Kaufland, Otto, billiger.de, guenstiger.de, Walmart, Lidl, AliExpress, and Rakuten. Each one has its own page in the Source Library with the identifiers it accepts and the countries it covers. View Source Library.

    Short identifiers: amazon, google, ebay, idealo, kaufland, otto, billiger, guenstiger, lidl, walmart, rakuten, aliexpress. Display names such as google_shopping return "unknown source". Source identifiers in the docs.

    Yes. You specify which sources a job should cover, and results come back per source in the same response schema, so comparing an Amazon observation with an Idealo one needs no source-specific handling.

    Lookups run as jobs. You submit a batch of identifiers, kwery resolves each one against the live marketplace, and results stream back as batches complete rather than blocking a single long request. Small jobs finish quickly; large jobs deliver progressively. For a single lookup, wait returns the result in the same response (up to 120 s). If it takes longer, you get a job ID to poll instead. Batches always run as jobs.

    Provide a callback_url when you submit a job and results are delivered to it as JSON. Webhooks are signed so you can verify authenticity, retried automatically on failure, and replayable on demand if your endpoint was down. Webhook delivery.

    Yes, with two per-job parameters. max_age (seconds, default 1200) sets how old a cached observation may be before kwery fetches again; set it to 0 to force a live fetch every time. not_found_max_age (days, default 10) sets how long a cached "not found" is honoured before the next check re-crawls. Anything answered from cache is free, so widening the windows lowers your credit consumption. Data quality details.

    A successful result is billed. A freshly crawled "not found" is billed too, because we still did the work of checking. A "not found" re-served from the not-found cache, and any failed request, cost nothing. For most sources 1 credit delivers a full data set for one SKU. On Amazon, Walmart, and eBay, 1 credit delivers 2 full data sets (search + product + offers, matched, each). Kaufland costs 3 credits per result, reflecting its higher delivery cost. Pricing overview.

    You get an explicit not-found result rather than an empty or guessed record. That answer is cached for 10 days by default (adjustable per request with not_found_max_age), and re-checks inside that window are served from cache and cost 0 credits. After the window expires, the next check triggers a fresh crawl, which is billed at the source's normal credit rate. Pricing and credits.

    "not found" means the marketplace does not know the product. A product with no purchasable offer right now is a normal result with offers_count 0 and buybox null. Per-result fields in the docs.

    A contractual SLA, 99.9% uptime with service credits, defined response times, and per-source freshness targets, is part of the Enterprise tier and documented in your agreement. Every plan, including free and Growth, runs on the same infrastructure with signed webhooks, automatic retries, replay on demand, and public service-health signals, but without a contractual uptime commitment.

    Start Building on kwery

    Self-serve API keys after signup. Enterprise volume, SLAs, and dedicated support available on request.

    Free Tier Available
    Enterprise SLA
    Global Scale