# info.description
Liefert die kommenden öffentlichen Events der mamiio-Community.

Nur Lesezugriff, keine Authentifizierung, keine API-Keys. Die
Schnittstelle ist absichtlich datensparsam: die exakte Adresse eines
Events wird NICHT ausgeliefert, nur Ortsname, Stadtteil und Stadt.
Private Events und Events mit Gruppenbezug tauchen hier nie auf.

Bitte fair benutzen: es gibt kein Rate-Limit-Versprechen, aber auch
keinen Grund, die Liste öfter als ein paar Mal am Tag zu holen — sie
ändert sich täglich, nicht sekündlich.

# paths./e.get.description
Aufsteigend nach dem nächsten anstehenden Termin sortiert. Drop-in-Serien (z. B. wöchentliches Yoga) werden auf ihren nächsten Termin zusammengefasst — erkennbar an `is_series`.

# paths./e.get.parameters[].description
Exakter Stadtname, wie im Event hinterlegt (z. B. `Berlin`). Kein Teilstring-Match.

# paths./e.get.parameters[].description
Name einer Lebensphase, z. B. `Schwangerschaft`. Gefiltert wird auf den Namen, nicht auf eine ID.

# paths./e.get.parameters[].description
Kategorie-Slug, wie er im Feld `categories[].slug` einer Antwort steht.

# paths./e.get.parameters[].description
Einträge pro Seite. Größere Werte werden still auf 200 gekappt, unlesbare Werte ignoriert.

# paths./e.get.parameters[].description
Übersprungene Einträge für die Blätterung.

# paths./e/{id}.get.description
Erwartet die UUID des Events. Die Website benutzt in ihren URLs stattdessen einen 22-Zeichen-base64url-Token, der dieselbe UUID kodiert — dieser Endpunkt akzeptiert nur die UUID-Form.

# paths./e/{id}.get.responses.404.description
Kein öffentliches Event mit dieser UUID.

# components.schemas.PublicEventList.properties.total.description
Anzahl der Einträge in DIESER Antwort — NICHT die Gesamtzahl aller Events. Zum Blättern `has_more` auswerten.

# components.schemas.PublicEventList.properties.has_more.description
Ob hinter diesem Offset noch weitere Events liegen.

# components.schemas.PublicEventListItem.properties.recurrence.description
z. B. `none`, `weekly`, `biweekly`, `custom`.

# components.schemas.PublicEventListItem.properties.cost.description
Freitext, kein Zahlenfeld — von `12,50 €` bis `Spende erbeten`. Leer bedeutet kostenlos.

# components.schemas.PublicEventListItem.properties.life_stages.description
Namen der Lebensphasen, in Anzeigereihenfolge.

# components.schemas.PublicEventListItem.properties.partner_slug.description
Nur bei Partner-Events gesetzt; das Profil liegt dann unter /partner/<slug>.

# components.schemas.PublicEventListItem.properties.image_url.description
SIGNIERTE URL mit nur einer Stunde Gültigkeit — nicht zwischenspeichern und nicht in eigene Metadaten übernehmen.

# components.schemas.PublicEventListItem.properties.partner_logo_url.description
Ebenfalls signiert, ebenfalls eine Stunde gültig.

# components.schemas.PublicEventListItem.properties.further_dates.description
Anzahl WEITERER anstehender Termine. 0 bedeutet Einzeltermin.

# components.schemas.PublicEventListItem.properties.is_series.description
Der Eintrag steht stellvertretend für eine Drop-in-Serie; geliefert wird nur der nächste Termin.

# components.schemas.PublicEvent.description
Einzelansicht. Enthält alles aus der Liste und zusätzlich Beschreibung, Tags, Altersspanne und Veranstalter-Details.

# components.schemas.PublicEvent.properties.additional_dates.description
Weitere Termine eines MEHRTEILIGEN Angebots (Kursblock, alle Termine gehören zusammen).

# components.schemas.PublicEvent.properties.life_stages.description
Hier als Objekte (anders als in der Liste, wo nur die Namen stehen).

# components.schemas.PublicEvent.properties.comment_count.description
Nur die Anzahl — die Kommentare selbst gibt es öffentlich nicht.