Zum Hauptinhalt springen
API-Dokumentation: Zähler

Wie man die Zähler-API abfragt und effizient mit gefilterten und geordneten Daten arbeitet.

Vor über einem Monat aktualisiert

API-Übersicht

Dieser API-Endpunkt liefert Daten zu Zählern für Assets in der Railnova-Plattform, wie z. B. Kilometer und Betriebsstunden. Die Daten werden in einer abgeflachten Struktur dargestellt, um die Nutzung zu erleichtern. Der Endpunkt ermöglicht das Filtern und Ordnen, und die Ergebnisse werden mit LinkHeader-Paginierung aufbereitet.

Endpunkt URL:

https://{company}.railnova.eu/api/v2/counters/flattened.json

Methode: GET

Authentifizierung

Eine einfache Authentifizierung mit gültigen Benutzerdaten für die Railnova-Plattform ist erforderlich.

API-Details

Antwort-Beispiel:

{
"id": 6947,
"asset_id": 12963,
"asset_name": "Flying Scotsman",
"asset_uic": null,
"asset_class_id": 260,
"asset_class_name": "A1",
"is_immobilised": false,
"telematic_source_message": "gps_km",
"telematic_source_column": "period_km",
"name": "gps_km",
"aggregate": "increment",
"value": "2241.0",
"unit": "km",
"daily_average_30d": "365.0",
"last_update": "2024-09-15T09:00:00+01:00",
"component_type_id": null,
"component_type_name": null,
"component_id": null,
"component_name": null,
"component_serial": null,
"data_freshness_first_threshold": "15",
"data_freshness_second_threshold": "60"
}

Beschreibung der Felder

  • id: Eindeutige Kennung für den Zähler

  • asset_id: Eindeutige Kennung für das zugehörige Asset (z. B. Lokomotive, Wagen)

  • asset_name: Name des Assets (z. B. „Flying Scotsman“)

  • asset_uic: UIC-Nummer für das Asset, falls vorhanden

  • asset_class_id: Eindeutige Kennung für den Fahrzeugstyp (z. B. 260 für A1)

  • asset_class_name: Name des Fahrzeugstyps (z. B. "A1")

  • is_immobilised: Boolescher Wert, der angibt, ob das Asset derzeit immobilisiert ist oder nicht

  • telematic_source_message: Telematik-Quelle, die sich auf die Zählerdaten bezieht (z. B. „gps_km“)

  • telematic_source_column: Telematik-Spalte, in der die spezifischen Zählerdaten gespeichert sind (z. B. "period_km")

  • name: Name des Zählers (z. B. „gps_km“)

  • aggregate: Für den Zählerwert verwendete Aggregationsmethode (Optionen sind „inkrementell“ und „absolut“)

  • value: Aktueller Wert des Zählers (z. B. „2241.0“ km)

  • unit: Maßeinheit für den Zählerwert (z. B. „km“ für Kilometer)

  • daily_average_30d: Durchschnittliches tägliches Inkrement für den Zähler in den letzten 30 Tagen

  • last_update: Datum und Uhrzeit der letzten Aktualisierung des Zählers (Format ISO 8601)

  • component_type_id: Kennung für den Komponententyp, der mit dem Zähler verbunden ist, falls zutreffend

  • component_type_name: Name des Komponententyps, der mit dem Zähler verbunden ist, falls zutreffend

  • component_id: Kennung der spezifischen Komponente, die mit dem Zähler verbunden ist, falls zutreffend

  • component_name: Name der spezifischen Komponente, die mit dem Zähler in Verbindung steht, falls zutreffend

  • component_serial: Seriennummer der mit dem Zähler verknüpften Komponente, falls zutreffend

  • data_freshness_first_threshold: Erster Schwellenwert für die Bestimmung der Datenfrische (z. B. nach 15 Tagen können die Daten als veraltet gelten)

  • data_freshness_second_threshold: Zweiter Schwellenwert für die Datenfrische (z. B. nach 60 Tagen müssen die Daten möglicherweise bearbeitet werden)

Abfrage-Parameter

Die folgenden Abfrageparameter werden für die Filterung der Daten unterstützt:

  • asset_id: Filter nach Asset-ID

  • asset_uic: Filter nach UIC-Nummer des Assets

  • asset_class_id: Filter nach der Fahrzeugsklassen-ID

  • asset_class_name: Filter nach dem Namen des Assets (z. B. "Flying Scotsman")

  • asset_name: Filter nach dem Namen des Assets (z. B. "A1")

  • telematic_source_message: Filter nach der Telematik-Quelle (z. B. "gps_km")

  • telematic_source_column: Filter nach der Telematik-Spalte (z. B. "period_km")

  • aggregate: Filter nach der Art der Aggregation (z. B. “Inkrement“)

  • name: Filtern nach dem Zählernamen

  • last_update__gt: Gibt nur Ergebnisse zurück, bei denen last_update größer als ein bestimmtes Datum ist (Format: JJJJ-MM-TT)

  • last_update__lt: Gibt nur Ergebnisse zurück, bei denen last_update kleiner als ein bestimmtes Datum ist (Format: JJJJ-MM-TT)

Beispiel einer gefilterten Anfrage:

GET https://{company}.railnova.eu/api/v2/counters/flattened.json?asset_name=SKL429&last_update__gt=2022-01-01

Sortierung

Die Ergebnisse können mit dem Abfrageparameter "ordering" geordnet werden. Die folgenden Werte werden unterstützt:

  • name: ordnet die Ergebnisse nach dem Zählernamen

  • last_update_date: ordnet die Ergebnisse nach dem letzten Aktualisierungsdatum

  • daily_avg: ordnet die Ergebnisse nach dem täglichen Durchschnitt der letzten 30 Tage

  • counter_type__name: ordnet die Ergebnisse nach dem Namen des Zählertyps an

  • asset__name: ordnet die Ergebnisse nach dem Assetnamen

Beispiel für eine sortierte Anfrage:

GET https://{company}.railnova.eu/api/v2/counters/flattened.json?ordering=last_update_date

Die Reihenfolge kann umgekehrt werden, indem man ein „-“ vor dem Wert setzt.

Beispiel für eine sortierte Anfrage (umgekehrt):

GET https://{company}.railnova.eu/api/v2/counters/flattened.json?ordering=-last_update_date

Paginierung

Die API verwendet LinkHeader-Paginierung.

Fehler-Codes

  • 401 Unauthorized: Authentifizierung fehlgeschlagen. Überprüfe den Benutzernamen und das Passwort.

  • 400 Bad Request: Die Anforderungsparameter sind ungültig.

  • 404 Not Found: Die angeforderte Ressource konnte nicht gefunden werden.

Support

Hast du noch Fragen? Dann geh auf die Railnova-Plattform und klick auf "Kontakt", um Hilfe zu erhalten!

Hat dies deine Frage beantwortet?