Erweiterung Routing API um EfA-Parameter

Um eine Parametrisierung von Onlinediensten anhand der für die empfangende Fachbehörde hinterlegten Parameter zu ermöglichen, soll der /routes-Endpunkt der Routing API um weitere Attribute erweitert werden (Projekt EfA-Parametrisierung).

Relevante Bemerkungen

Links

Details für die Implementierung

  • In der API-Spezifikation sind Hinweise zur Auffindbarkeit der Parameter in der Suchdienst API des PVOG als Kommentar zu finden. Siehe z.B. https://git.fitko.de/fit-connect/routing-api/-/blob/efa-parameters/schemas/route.yaml#L34
  • Über die Suchdienst API nicht abrufbare Parameter (Parameter nicht gesetzt) werden über die Routing API nicht ausgegeben (Parameter sind optional).
  • Das Attribut destinationLogo soll zukünftig ebenfalls über die Suchdienst API abgerufen werden können.
  • Für das Attribut processingDuration muss eine Filterung nach Gültigkeitszeitraum erfolgen. In den über die Suchdienst API verfügbaren Bearbeitungsdauerm sind ggf. Gültigkeitszeiträume angegeben. Der Routingdienst filtert Bearbeitungsdauern nach Gültigkeit (modulBearbeitungsdauer.bearbeitungsdauer.gueltigkeit), sodass nur aktuell gültige Werte zurückgegeben werden (sofern Gültigkeit gepflegt). Hierzu werden mind. die in https://git.fitko.de/foederale-it/parametrisierung/-/issues/27 genannten Sonderfälle berücksichtigt.
  • Die angegebene unit der processingDuration wird im Routingdienst gemäß Abschnitt "III.B.1.13 Codeliste Zeiteinheit" der XZuFi-Spezifikation und der Spezifikation der Routing API in englische Bezeichner übersetzt (z.B. "Woche" -> "week"). Es werden alle in der Codeliste angegebenen Zeiteinheiten berücksichtigt.
  • Im Attribut customParameters können weitere Parameter aus der Suchdienst API übernommen werden (Objekte parameters.filter(name="efa.custom.*") in der Suchdienst API). Custom Parameter haben jeweils einen einfachen Datentyp (string, int, float oder boolean). Verschachtelte Datenstrukturen werden hier nicht unterstützt.

Akzeptanzkriterien

  1. Alle in der API-Spezifikation neu hinzugefügten Parameter sind anhand eines Beispiels (-> Testdatensatz) über die Routing API abrufbar.
  2. Alle oben beschriebenen Anmerkungen zur Implementierung sind berücksichtigt.
  3. Die Änderungen sind auf der Testumgebung ausgerollt.
  4. Für den Abruf aller Parameter existieren Unit Tests.
Edited by Markus Flögel