Skip to content

Fetching event dates

In this tutorial you will learn how to go from a product group to the individual event dates it contains — each with its own date, venue, city, and ticket availability.

Prerequisites

What are products?

In Eventim's data model:

  • A product group is the top-level event or tour (e.g. "Rammstein Stadium Tour 2025").
  • A product is one specific date of that tour — a single concert at a single venue.

products() uses a different endpoint than the public search API; it fetches data from Eventim's private component API and parses HTML-embedded JSON. This is why it requires a product_group_id rather than a search term.

Step 1 — Find a product group ID

From the previous tutorial you know how to iterate product groups. The product_group_id attribute holds the ID you need:

from pyventim import EventimClient, EventimMarket

client = EventimClient(EventimMarket.GERMANY)

for product_group in client.product_groups(categories=["Concerts"], page_limit=1):
    print(product_group.product_group_id, product_group.name)
    break  # just grab the first one

Step 2 — Fetch individual dates

Pass the product_group_id to products():

for event in client.products(product_group_id=12345, page_limit=1):
    print(event.name, event.start_date, event.city)

products() returns an iterator of EventimPrivateCalendarContentEvent objects, each representing one bookable date.

Step 3 — Putting it together

fetch_products.py
from pyventim import EventimClient, EventimMarket

client = EventimClient(EventimMarket.GERMANY)

# Find a product group
for product_group in client.product_groups(categories=["Concerts"], page_limit=1):
    print(f"Tour: {product_group.name}")

    # Fetch its individual dates
    for event in client.products(product_group.product_group_id, page_limit=1):
        print(f"  {event.start_date}  {event.name}  ({event.city})")

    break  # only process the first product group

Run it:

python fetch_products.py

What you learned

  • The difference between product groups and products (individual dates)
  • How to use products() with a product_group_id
  • That products() uses a private API endpoint under the hood

Next steps

Now that you can fetch events and dates, the how-to guides show you how to narrow results using filters like date ranges, cities, and ticket types.