Museums

Häuser einer go~mus-Instance - listen, Detail abrufen, Öffnungszeiten ermitteln. Referenzdaten für Filter und Anzeigen.

Eine Museum-Resource in go~mus repräsentiert ein Haus oder einen Standort. Eine Instance hostet entweder ein einzelnes Museum oder mehrere Häuser eines Verbunds. Auf praktisch jeder Resource-Liste taucht museum_id als Filter auf - die Museums-Resource liefert die Werte dazu, plus Detaildaten und Öffnungszeiten für die öffentliche Anzeige.

Vollständige Endpoint- und Schema-Referenz: Swagger.

Endpoints im Überblick

EndpointWofür
GET /api/v4/museumsListe aller Häuser dieser Instance
GET /api/v4/museums/:idDetail mit Beschreibung und Content
GET /api/v4/museums/:id/opening_hoursÖffnungszeiten für ein konkretes Datum
GET /api/v4/museums/:id/schedulesTagesplan inklusive eingeplanter Touren / Events (sofern Schedule-Feature aktiv)

Anatomie eines Museum-Objekts

  • id - stabil, nutzt das in by_museum_ids[]-Filtern überall
  • title, sub_title, description - übersetzbar via ?locale=de
  • picture - URL zum Hauptbild (Hero, Listenanzeige)
  • content - Langtext-HTML für Detail-Seiten
  • created_at, updated_at

Komplette Feldliste: Swagger.

Häufige Aufgaben

Häuser auflisten

curl "https://demo.gomus.de/api/v4/museums?locale=de"

Sortiere nach shop_order (vom Haus konfigurierte Reihenfolge), nicht alphabetisch. Praktisch für Frontends, die die Anzeige-Reihenfolge der Häuser an die Konfiguration der Instance koppeln wollen.

Museum-Detail

curl "https://demo.gomus.de/api/v4/museums/20?locale=de"

Liefert Description plus content für eine vollständige "Über das Haus"-Seite.

Öffnungszeiten ermitteln

curl "https://demo.gomus.de/api/v4/museums/20/opening_hours?date=2026-05-15"

Parameter:

  • date - ISO-Datum (Default: heute)
  • quota_ids[] - optional: nur über bestimmte Quotas berechnen (z.B. spezifische Eingangsbereiche)

Antwort enthält die effektiven Öffnungszeit-Slots für diesen Tag - berücksichtigt auch Sonderschließungen, Feiertage und Quota-Konfigurationen.

Beziehungen

Museum
 ├── Tickets ........... per museum_ids
 ├── Tours ............. per museum_id
 ├── Events ............ per museum_id
 ├── Exhibitions ....... per museum_id
 ├── Quotas ............ über die Tickets/Events angebunden
 └── Schedule (optional) Tagesplan, falls Feature aktiv

Stolperdrahte

  • Sortierung folgt shop_order, nicht Titel. Wenn du alphabetisch sortieren wollen, musst du clientseitig sortieren - der Server respektiert die im go~mus-Backoffice konfigurierte Reihenfolge.
  • opening_hours ist datumsabhängig. Sondertage (Schließung, verlängerte Öffnungszeiten) zeigen sich nur für das angefragte Datum. Cache nicht den heutigen Tag und nutzen den Wert für morgen.
  • Schedules-Endpoint braucht Feature-Flag. Wenn die Instance kein Schedule-Feature aktiv hat, antwortet der Endpoint mit Fehler. Vorher mit dem Operator klären, ob das Feature aktiviert ist.

Verwandte Seiten