Discover/Aponeo API
live

Aponeo APIaponeo.de

Access Aponeo.de product data via API: search by PZN, browse categories, get pricing, availability, deals, and JSON-LD product details for German pharmacy items.

Endpoint health
verified 4d ago
get_product_detail
search_products
get_new_products
get_product_by_pzn
get_category_products
8/8 passing latest checkself-healing
Endpoints
8
Updated
26d ago

What is the Aponeo API?

The Aponeo.de API covers 8 endpoints for extracting product data from one of Germany's major online pharmacies. Use search_products to run full-text queries across the catalog and retrieve PZN codes, prices, and manufacturer details, or call get_product_detail with a PZN to pull structured product data including JSON-LD offers, ratings, attribute maps, and stock availability. Category browsing, deal feeds, and bestseller lists are also supported.

Try it
Page number for pagination
Search keyword (e.g., 'aspirin', 'ibuprofen', 'vitamin d')
api.parse.bot/scraper/9fe92eb8-fe22-4dbc-9f98-fd5b679b2a7c/<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/9fe92eb8-fe22-4dbc-9f98-fd5b679b2a7c/search_products?page=1&query=aspirin' \
  -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 aponeo-de-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.

"""Walkthrough: Aponeo Pharmacy SDK — search medications, browse categories, check deals."""
from parse_apis.aponeo_pharmacy_api import Aponeo, ProductNotFound

client = Aponeo()

# Search for products by keyword — limit caps total items fetched.
for product in client.productsummaries.search(query="ibuprofen", limit=3):
    print(product.name, product.price_b, product.brand)

# Drill into one search result to get full product details.
item = client.productsummaries.search(query="aspirin", limit=1).first()
if item:
    detail = item.details()
    print(detail.pzn, detail.url, detail.availability)

# Browse a category — paginated, returns products with pricing/discounts.
for cat_product in client.categoryproducts.by_category(category="arzneimittel", limit=5):
    print(cat_product.name, cat_product.price, cat_product.discount)

# Fetch a product directly by PZN.
try:
    product = client.products.get(pzn="03464237")
    print(product.pzn, product.availability, product.url)
except ProductNotFound as exc:
    print(f"Product not found: {exc.pzn}")

# Check current top sellers.
for top in client.productsummaries.topsellers(limit=3):
    print(top.name, top.price_b)

print("exercised: search / details / by_category / get / topsellers")
All endpoints · 8 totalmissing one? ·

Full-text search over Aponeo's product catalog. Returns products from the site's dataLayer including name, PZN, pricing, brand, and manufacturer. Paginated by page number; total_results indicates the full result count. Each product carries a PZN suitable for fetching full detail via get_product_detail.

Input
ParamTypeDescription
pageintegerPage number for pagination
queryrequiredstringSearch keyword (e.g., 'aspirin', 'ibuprofen', 'vitamin d')
Response
{
  "type": "object",
  "fields": {
    "page": "integer — current page number",
    "query": "string — the search query used",
    "products": "array of product objects with name, pzn, price_b, base_price, brand, manufacturer",
    "total_results": "integer — total number of results found"
  },
  "sample": {
    "data": {
      "page": 1,
      "query": "aspirin",
      "products": [
        {
          "pzn": "03464237",
          "gtin": "03464237",
          "name": "Aspirin Plus C Brausetabletten",
          "brand": "Aspirin",
          "price_b": 15.99,
          "category": [
            "9426",
            "9542",
            "12155"
          ],
          "basePrice": 24.5,
          "base_price": 24.5,
          "grossPrice": 15.99,
          "categoryIds": [
            "9426",
            "9542",
            "12155"
          ],
          "manufacturer": "Bayer Vital GmbH",
          "promotionKey": "",
          "manufacturerid": "2958"
        }
      ],
      "total_results": 28
    },
    "status": "success"
  }
}

About the Aponeo API

Product Lookup and Search

The search_products endpoint accepts a query string (e.g., 'ibuprofen', 'vitamin d') and an optional page integer for pagination. Results include each product's name, pzn, price_b, base_price, brand, and manufacturer, plus a total_results count so you can iterate through all pages. The returned pzn values feed directly into the detail endpoints.

get_product_detail and get_product_by_pzn both resolve a full product record by PZN. The response contains a json_ld array with Product schema objects — including offers, aggregate ratings, and reviews — alongside an attributes object (label-to-value pairs such as dosage form or package size), a descriptions map of section headings to text content, and a boolean availability field indicating current stock status. Providing a slug to get_product_detail constructs the direct product URL; omitting it falls back to a search-based resolution.

Category and Promotional Feeds

get_category_products takes a category path (e.g., 'arzneimittel', 'koerperpflege-kosmetik') and an optional page number, returning product name, pzn, url, price, and where applicable base_price and discount fields. Three no-parameter endpoints — get_deals, get_new_products, and get_topseller_products — return product lists from Aponeo's Schnäppchen, Neuheiten, and Topseller pages respectively, each providing name, pzn, price_b, and available metadata fields.

APO Cash Deals

get_apo_cash_deals surfaces products enrolled in Aponeo's APO Cash bonus scheme. The response mirrors the category product shape: name, pzn, url, price, and optional base_price and discount percentage. This endpoint is useful for tracking which products carry the bonus and monitoring price changes over time.

Reliability & maintenanceVerified

The Aponeo API is a managed, monitored endpoint for aponeo.de — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when aponeo.de 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 aponeo.de 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
4d ago
Latest check
8/8 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
  • Monitor price changes for specific PZNs across Aponeo's catalog using get_product_by_pzn on a schedule
  • Build a German pharmacy price-comparison tool by searching for drug names and comparing price_b and base_price fields
  • Track current discount promotions by polling get_deals for updated Schnäppchen product lists
  • Identify newly listed pharmaceutical products by periodically fetching get_new_products
  • Aggregate structured product metadata (dosage form, package size, manufacturer) from the attributes response field
  • Audit stock availability across a watchlist of PZNs using the availability boolean in detail responses
  • Discover which products qualify for APO Cash bonuses and their discount percentages via get_apo_cash_deals
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 Aponeo.de offer an official developer API?+
Aponeo does not publish a public developer API or documented data feed. There is no official endpoint for third-party access to their product catalog or pricing data.
What does `get_product_detail` return beyond basic pricing?+
It returns a json_ld array containing Product schema objects with offer details, aggregate ratings, and reviews. It also returns an attributes object mapping label names (such as dosage form or pack size) to their values, a descriptions map of labeled text sections from the product page, and a boolean availability flag for stock status.
How does pagination work for search and category endpoints?+
search_products accepts an optional page integer and returns total_results so you can calculate the number of pages needed. get_category_products also accepts a page parameter. The deal, new product, topseller, and APO cash endpoints return a flat list with no pagination support.
Does the API expose prescription-only medication data or patient leaflet documents?+
The API returns publicly listed product data including descriptions, attributes, and availability. Prescription-only medication listings appear in search and category results where Aponeo lists them publicly, but there is no dedicated endpoint for prescription status flags or downloadable package leaflet PDFs. You can fork this API on Parse and revise it to add an endpoint targeting those specific data points.
Can I retrieve customer review text for individual products?+
Aggregate rating data is included in the json_ld array returned by get_product_detail and get_product_by_pzn. Individual review text is not broken out into a dedicated endpoint or separate fields. You can fork this API on Parse and revise it to add an endpoint that extracts individual review content from the product page.
Page content last updated . Spec covers 8 endpoints from aponeo.de.
Related APIs in HealthcareSee all →
docmorris.de API
Search and browse products from DocMorris.de to compare pricing, read customer reviews, and find current discounts. Look up specific products by name or pharmaceutical number (PZN) to retrieve detailed information, real-time pricing, and availability data.
amazon.de API
Search Amazon.de for products, retrieve detailed product information, customer reviews, seller and offer data, bestseller lists, and autocomplete suggestions.
dischem.co.za API
Search for pharmacy products and retrieve detailed information including prices, descriptions, and images directly from Dis-Chem's catalog. Browse product listings and access complete product details all in one place.
chemistwarehouse.co.nz API
Search for medications and health products at Chemist Warehouse NZ, browse categories, view detailed product information, and find nearby store locations. Get access to product pricing, descriptions, and store addresses all in one place.
en.zalando.de API
Browse Zalando's product catalog to find items by category or search, view detailed product information including prices and descriptions, and discover available brands and search suggestions. Get instant access to Zalando's inventory data to compare products, prices, and availability across fashion and lifestyle categories.
apollo247.com API
Search and compare medicines, view detailed product information, discover lab tests, and locate nearby Apollo 24|7 pharmacy stores. Browse medical specialties and popular diagnostic services to plan your healthcare needs in one convenient platform.
fahorro.com API
Search and browse Farmacias del Ahorro's pharmacy product catalog to find medications, health products, and promotions with detailed information including prices, availability, and product specifications. Filter products by category, brand, and apply advanced search to discover deals and exclusive Marca Propia items.
adidas.de API
Search and browse Adidas products on adidas.de to find detailed information about items, availability, pricing, and specific categories. Get comprehensive product details including size availability and stock levels across the German Adidas store.