Viadi Mobility Services

Dokumentation

Auf dieser Seite sind die verschiedenen Funktionalitäten des Viadi Routing Service beschrieben. Um auf die API zugreifen zu können, müssen Sie sich registrieren. Danach erhalten Sie die Base-URL sowie Ihren persönlichen API-Key.

Allgemein

Die Viadi Routing Service API ist nach dem REST-Prinzip aufgebaut. Als Antwortformat wird zur Zeit nur JSON unterstützt. Als Transportprotokoll wird HTTP und HTTPS unterstützt.

Verbindungen

 /v1/connection

Parameter

Field Type Default Description
from String required

Name (oder ID) der Abfahrtsstation der gesuchten Verbindung.

fromLat double

Anstelle von from kann mit fromLat/fromLon eine Startposition angegeben werden, es wird dann die nächstgelegene Station als Startpunkt gewählt.

fromLon double

Anstelle von from kann mit fromLat/fromLon eine Startposition angegeben werden, es wird dann die nächstgelegene Station als Startpunkt gewählt.

to String required

Name (oder ID) der Ankunftsstation der gesuchten Verbindung.

toLat double

Anstelle von to kann mit toLat/toLon eine Startposition angegeben werden, es wird dann die nächstgelegene Station als Startpunkt gewählt.

toLon double

Anstelle von to kann mit toLat/toLon eine Startposition angegeben werden, es wird dann die nächstgelegene Station als Startpunkt gewählt.

via String

Name der Via-Station der gesuchten Verbindung.

time long jetzt

Unix-Zeitstempel in Millisekunden der gesuchten Abfahrts-/Ankunftszeit.

departure boolean true

Bei 'true' werden Verbindungen gesucht die nach der angegebenen Zeit abfahren, bei 'false' solche die vor der angegebenen Zeit ankommen.

minNumberOfConnections int 5

Gibt an wie viele Verbindungen die Antwort mindestens enthalten kann. Möglicherweise werden mehr Verbindungen als die gewünschte Anzahl zurückgeliefert.

apiKeyWeb String

Kann verwendet werden, wenn der Api-Key nicht als Header übergeben werden kann.

Headers

Field Type Default Description
API-Key String

API-Key um Zugriff auf die Schnittstelle zu erhalten.

Accept-Language String en

Sprache für Text-Inhalte. Unterstützt werden de/en/fr/it.

Beispiel:

curl -H "API-Key: YOURAPIKEY" "https://BASEURL/v1/connection?from=Z%C3%BCrich,%20Central&to=Fiesch"

Antwort

Success 200

Field Type Description
connections Connection[]

Falls dieser Array leer ist, wurden keine Verbindungen für die angegebene Zeit gefunden.

nextRequest String

URL um spätere Verbindungen zu laden.

prevRequest String

URL um frühere Verbindungen zu laden.

Error 400

Field Type Description
statusCode int

Statuscode des Fehlers

msg String

Beschreibung des Fehlers.

Beispiel-Antwort:

Abfahrten

 /v1/departures

Parameter

Field Type Default Description
from String required

Name der Station für die Abfahrten gesucht werden.

time long jetzt

Unix-Zeitstempel in Millisekunden der gesuchten Abfahrts-/Ankunftszeit.

apiKeyWeb String

Kann verwendet werden, wenn der Api-Key nicht als Header übergeben werden kann.

Headers

Field Type Default Description
API-Key String

API-Key um Zugriff auf die Schnittstelle zu erhalten.

Accept-Language String en

Sprache für Text-Inhalte. Unterstützt werden de/en/fr/it.

Beispiel:

curl -H "API-Key: YOURAPIKEY" "https://BASEURL/v1/departures?from=Z%C3%BCrich,%20Central"

Antwort

Success 200

Field Type Description
departures Section[]

Falls dieser Array leer ist, wurden keine Abfahrten für die angegebene Zeit gefunden.

nextRequest String

URL um spätere Abfahrten zu laden.

prevRequest String

URL um frühere Abfahrten zu laden.

Error 400

Field Type Description
statusCode int

Statuscode des Fehlers

msg String

Beschreibung des Fehlers.

Beispiel-Antwort:

Stationen

 /v1/stations

Parameter

Field Type Default Description
query String required

User input der zu Stationsname vervollständigt werden soll.

apiKeyWeb String

Kann verwendet werden, wenn der Api-Key nicht als Header übergeben werden kann.

Headers

Field Type Default Description
API-Key String

API-Key um Zugriff auf die Schnittstelle zu erhalten.

Accept-Language String en

Sprache für Text-Inhalte. Unterstützt werden de/en/fr/it.

Beispiel:

curl -H "API-Key: YOURAPIKEY" "https://BASEURL/v1/stations?query=Z%C3%BCrich,%20C"

Antwort

Success 200

Field Type Description
Location[]

Array von Locations die zum eingegebenen Query passen.

Error 400

Field Type Description
statusCode int

Statuscode des Fehlers

msg String

Beschreibung des Fehlers.

Beispiel-Antwort:

Models

Hier folgt eine Beschreibung der verschiedenen Daten-Objekte.

Connection

Field Type Description
from Checkpoint

Abfahrtsort

to Checkpoint

Ankunftsort

duration long

Dauer der Verbindung in Millisekunden.

transfers int

Anzahl Umstiege für diese Verbindung.

sections Section[]

Teilstrecken der Verbindung

railServiceInfos RailServiceInfo[]

Ankunftsort

hasInfo boolean

Flag ob es für diese Verbindung Info-RailServiceInfos gibt.

hasTrouble boolean

Flag ob es für diese Verbindung Störungs-RailServiceInfos gibt.

realArrivalTime long

Abfahrtszeit als Zeitstempel in Millisekunden inkl. dem ersten Fussweg.

realDepartureTime long

Ankunftszeit als Zeitstempel in Millisekunden inkl. dem letzten Fussweg.

Checkpoint

Field Type Description
location Location

Ort des Checkpoints

time long

Zeitstempel des Checkpoints in Millisekunden

delay long

Verspätung gegenüber time in Millisekunden

platform String

Name des Gleis oder null falls keine Information vorhanden ist.

Location

Field Type Description
name String

Name der Location

latitude double

Latitude der Location

longitude double

Longitude der Location

type String

Momentan immer "station".

Section

Field Type Description
from Checkpoint

Start der Section

to Checkpoint

Ende der Section

route Route

Route dieser Section, null falls die Section einen Fussweg beschreibt.

Route

Field Type Description
name String

Name des Verkehrsmittels

infoName String

Ergänzung zum Namen des Verkehrsmittels

company String

ID der Betreiber-Firma.

destination String

Name der Zielstation des Verkehrsmittels

tripId String

GTFS Trip ID

sections IntermediateSection[]

Zwischenhalte des Verkehrsmittels (nur gefahrener Bereich)

attributes Attribute[]

Attribute für dieses Verkehrsmittel

IntermediateSection

Field Type Description
from Checkpoint

Start der Section

to Checkpoint

Ende der Section

type String

Typ des Verkehrsmittels

line String

Liniennummer des Verkehrsmittels

Attribute

Field Type Description
attributeId String

ID des Attributes

attributeDescription String

Beschreibung des Attributes

RailServiceInfo

Field Type Description
text String

Beschreibung der Meldung

header String

Kurze Beschreibung der Meldung

isInfo boolean

Ist diese Meldung eine Info-Meldung.

isTrouble boolean

Ist diese Meldung eine Störungs-Meldung.