SIVAdmin API
This GraphQL API allows to fetch and mutate some parts of the SIVAdmin.
To access the API you'll have to use a token and that token will give you full or restricted access to what you can do depending on your integration.
The main actions can be found under the Operations section.
In case the client has multiple networks (bus, train, cablecar etc.), it is possible to specify the desired network by adding a URL parameter: &network_id=CLIENT:NETWORK:ID
API Endpoints
# Requests / STAGING:
https://sittr-staging.les2lacs.gatemedia.ch/graphql?token=XXXXXXXXXX
# Subscriptions / STAGING:
https://sittr-staging.les2lacs.gatemedia.ch/cable?token=XXXXXXXXXX
# Requests / PRODUCTION:
https://sittr.les2lacs.gatemedia.ch/graphql?token=XXXXXXXXXX
# Subscriptions / PRODUCTION:
https://sittr.les2lacs.gatemedia.ch/cable?token=XXXXXXXXXX
# Directions API / STAGING:
https://staging.ojp.gatemedia.ch/api/v1/directions?token=XXXXXXXXXX
# Directions API / PRODUCTION:
https://ojp.gatemedia.ch/api/v1/directions?token=XXXXXXXXXX
# Stops API / STAGING:
https://staging.ojp.gatemedia.ch/api/v1/stops?token=XXXXXXXXXX
# Stops API / Production:
https://ojp.gatemedia.ch/api/v1/stops?token=XXXXXXXXXX
Examples
Network Filter
Returns or filters available Networks associated to the transport company.
Example request:
fragment Network on Network {
objectid
lines {
objectid
}
}
query {
firstNetwork: network { ...Network }
busAndTrainNetworks: networks(ids:["NETWORK_BUS:PTNetwork:1", "NETWORK_TRAIN:PTNetwork:1"]) { ...Network }
allNetworks: networks { ...Network }
busNetwork: network(id: "NETWORK_BUS:PTNetwork:1") { ...Network }
trainNetwork: network(id: "NETWORK_TRAIN:PTNetwork:1") { ...Network }
cableCarNetwork: network(id: "NETWORK_CABLE_CAR:PTNetwork:1") { ...Network }
}
Example response:
{
"data": {
"cableCarNetwork": {
"objectid": "NETWORK_CABLE_CAR:PTNetwork:1",
"lines": [
{
"objectid": "NETWORK_CABLE_CAR:Line:3"
}
]
}
}
}
These 'network' objects can then be use in subsequent API calls when, fetching lines & stops for instance.
Messages API
Messages API are used to fetch messages destined to any kind of channels such as Vehicles, BIV, Website etc.
Current supported types are: WEB_SITE, BIV_MESSAGE, BIV_ANNOUNCEMENT and BIV_EPAPER_CONTENT depending on the company's setup.
Fetch Messages
Returns all Messages of a given type.
Example request:
messages(type: WEB_SITE, start_time: "00:00", end_time: "23:59") {
title
reason
content {
... on WebsiteContent {
title
content
enabled
severity
pdf_url
}
}
target {
__typename
... on LinesTarget {
lines {
id
name
ways
}
from_stop
to_stop
}
... on LocationTarget {
regions {
... on LocationTargetCircle {
center {
latitude
longitude
}
radius
}
... on LocationTargetPolygon {
paths {
latitude
longitude
}
}
}
}
}
schedule {
monday
tuesday
wednesday
thursday
friday
saturday
sunday
start_date
start_time
end_date
end_time
continuous
}
}
Example response:
{
"data": {
"messages": [
{
"title": "Website Test",
"reason": "test",
"content": {
"title": "Test site",
"content": "Test Website",
"enabled": true,
"severity": "minor",
"pdf_url": ""
},
"target": {
"__typename": "LinesTarget",
"lines": [
{
"id": "NETWORK:Line:123",
"name": "123",
"ways": [
"FORWARD",
"BACKWARD"
]
}
],
"from_stop": "NETWORK:StopArea:ABC-A",
"to_stop": "NETWORK:StopArea:ABC-C"
// For a RegionTarget
// "__typename": "LocationTarget",
// "regions": [
// {
// "paths": [
// {
// "latitude": 46.52250830120182,
// "longitude": 6.44529588867186
// },
// {
// "latitude": 46.50738748155647,
// "longitude": 6.420233327636704
// },
// {
// "latitude": 46.50384293084593,
// "longitude": 6.431906301269517
// },
// {
// "latitude": 46.52770511125373,
// "longitude": 6.468641835937485
// }
// ]
// },
// {
// "center": {
// "latitude": 46.50573338665296,
// "longitude": 6.453878957519517
// },
// "radius": 873
// }
// ]
},
"schedule": {
"monday": false,
"tuesday": false,
"wednesday": false,
"thursday": false,
"friday": false,
"saturday": false,
"sunday": false,
"start_date": "01.02.2022",
"start_time": "12:55",
"end_date": "02.02.2022",
"end_time": "02:30",
"continuous": true
}
}
]
}
}
Other examples using for BIV announcements and BIV e-papers:
{
query {
announcementMessages: messages(
type: BIV_ANNOUNCEMENT
start_time: "00:00"
end_time: "23:59"
) {
id
title
content {
enabled
... on BIVAnnouncementContent {
gravity
mode
periodicity
announcements {
text
}
}
}
}
epaperMessages: messages(
type: BIV_EPAPER_CONTENT
start_time: "00:00"
end_time: "23:59"
) {
id
title
content {
enabled
... on BIVEpaperContent {
enabled
priority
duration
content {
id
... on SGMediaContent {
type
value
}
}
}
}
}
}
}
Example response:
{
"data": {
"announcementMessages": [
{
"id": "7511",
"title": "test",
"content": {
"enabled": true,
"gravity": "MINOR",
"mode": "FREQUENCY",
"periodicity": 10,
"announcements": [
{
"text": "foo"
},
{
"text": "bar"
}
]
}
}
],
"epaperMessages": [
{
"id": "7511",
"title": "test",
"content": {
"enabled": true,
"priority": 1,
"duration": 7,
"content": {
"id": "37819",
"type": "IMAGE",
"value": "https://gm-sg-resources-staging.s3-eu-west-1.amazonaws.com/064b4e90c750879af7c529286fad91gd.png"
}
}
}
]
}
}
Fetch Situations
Returns all Network's Situations.
Example request:
{
network {
situations {
id
reason_name {
de
en
fr
it
}
targets {
destination_name
destination_objectid
direction
kind
line_objectid
line_ref
line_stop_area_objectids
stop_area_name
stop_area_objectid
}
participant_ref
planned
priority
publication_window_start_time
publication_window_end_time
publishing_actions {
id
passenger_information_actions {
action_ref
id
recorded_at_time
textual_contents(size: LARGE) {
consequence {
de
en
fr
it
}
description {
de
en
fr
it
}
duration {
de
en
fr
it
}
reason {
de
en
fr
it
}
recommendation {
de
en
fr
it
}
remark {
de
en
fr
it
}
size
summary {
de
en
fr
it
}
}
}
targets {
destination_name
destination_objectid
direction
kind
line_objectid
line_ref
line_stop_area_objectids
stop_area_name
stop_area_objectid
}
}
scope_type
situation_number
summary {
de
en
fr
it
}
cause
consequences {
condition
id
targets {
destination_name
destination_objectid
direction
kind
line_objectid
line_ref
line_stop_area_objectids
stop_area_name
stop_area_objectid
}
}
creation_time
validity_start_time
validity_end_time
version
}
}
}
Example response:
{
"data": {
"network": {
"situations": [
{
"id": "75",
"reason_name": null,
"participant_ref": "ski-ems-out-sx_prod",
"planned": true,
"priority": 3,
"publication_window_start_time": "2023-08-22T05:00:00+02:00",
"publication_window_end_time": "2500-12-31T01:00:00+01:00",
"scope_type": "stop_place",
"situation_number": "ch:1:sstid:1:1700c5ed-e993-511b-b3fa-2563567784333",
"summary": {
"de": "disruption on stop ABC-A",
"en": "disruption on stop ABC-A",
"fr": "disruption on stop ABC-A",
"it": "disruption on stop ABC-A"
},
"cause": "constructionWork",
"creation_time": "2023-08-17T17:34:41+02:00",
"validity_start_time": "2023-08-22T05:00:00+02:00",
"validity_end_time": "2500-12-31T01:00:00+01:00",
"version": "4",
"targets": [
{
"destination_name": null,
"destination_objectid": null,
"direction": null,
"kind": "stop_area",
"line_objectid": null,
"line_ref": null,
"line_stop_area_objectids": null,
"stop_area_name": "ABC",
"stop_area_objectid": "NETWORK:StopArea:ABC-A"
}
],
"publishing_actions": [
{
"id": "53",
"passenger_information_actions": [
{
"action_ref": "ems-123-0",
"id": "53",
"recorded_at_time": "2023-08-17T17:50:08+02:00",
"textual_contents": [
{
"consequence": {
"de": "Richtung: ABC.",
"en": "Direction: ABC.",
"fr": "Direction : ABC.",
"it": "Direzione: ABC."
},
"description": {
"de": "Betroffen sind die Busse 123.",
"en": "Bus 123 is affected.",
"fr": "Les bus 123 sont concernés.",
"it": "L'autobus 123 è interessato."
},
"duration": {
"de": "Die Dauer der Einschränkung ist unbestimmt.",
"en": "The duration of the restriction is not known.",
"fr": "La durée de la perturbation est indéterminée.",
"it": "La durata della perturbazione è indeterminata."
},
"reason": {
"de": "Der Grund dafür sind Bauarbeiten.",
"en": "This is due to construction work.",
"fr": "Des travaux en sont la cause.",
"it": "La causa sono lavori di costruzione."
},
"recommendation": {
"de": "Provisorische Haltestelle: 30 m nach vorne.",
"en": "Temporary stop: 30 m forward.",
"fr": "Arrêt provisoire : 30 m en avant.",
"it": "Fermata provvisoria: 30 m davanti."
},
"remark": null,
"size": "LARGE",
"summary": {
"de": "Die Haltestelle Stop ABC ist verschoben.",
"en": "The Stop ABC stop has been moved.",
"fr": "L’arrêt Stop ABC est déplacé.",
"it": "La fermata Stop ABC è stata spostata."
}
}
]
}
],
"targets": [
{
"destination_name": null,
"destination_objectid": null,
"direction": "forward",
"kind": "line",
"line_objectid": "NETWORK:Line:123",
"line_ref": "85:001:123",
"line_stop_area_objectids": [
"NETWORK:StopArea:ABC-A"
],
"stop_area_name": null,
"stop_area_objectid": null
}
]
}
],
"consequences": [
{
"condition": "unknown",
"id": "62",
"targets": [
{
"destination_name": null,
"destination_objectid": null,
"direction": "forward",
"kind": "line",
"line_objectid": "NETWORK:Line:123",
"line_ref": "85:001:123",
"line_stop_area_objectids": [
"NETWORK:StopArea:ABC-A"
],
"stop_area_name": null,
"stop_area_objectid": null
}
]
},
{
"condition": "unknown",
"id": "63",
"targets": [
{
"destination_name": null,
"destination_objectid": null,
"direction": "forward",
"kind": "line",
"line_objectid": "NETWORK:Line:123",
"line_ref": "85:001:123",
"line_stop_area_objectids": [
"NETWORK:StopArea:ABC-A"
],
"stop_area_name": null,
"stop_area_objectid": null
}
]
}
]
}
]
}
}
}
Line API
The Line API is used to fetch informations related to lines such as next departures and stop points.
Fetch All Lines And Stops
Fetch all lines and stops
Example request:
network {
lines {
objectid
stop_areas {
id
}
stop_points {
id
}
}
}
Example response:
{
"data": {
"network": {
"lines": [
{
"objectid": "NETWORK:Line:123",
"stop_areas": [
{
"id": "NETWORK:StopArea:ABC"
},
{
"id": "NETWORK:StopArea:DEF"
}
],
"stop_points": [
{
"id": "NETWORK:StopArea:ABC-01"
},
{
"id": "NETWORK:StopArea:ABC-02"
},
{
"id": "NETWORK:StopArea:DEF-01"
}
]
}
]
}
}
}
Fetch Line
Allows to fetch information for a given line and direction.
Example request:
line(line_id: "NETWORK:Line:123", way: FORWARD) {
id
name
way
stops {
id
name
stop_points {
latitude
longitude
departures {
th
rt
destination
th_platform
platform
cancelled
additional
}
}
}
}
Example response:
{
"data": {
"line": {
"id": "NETWORK:Line:123",
"name": "202",
"way": "FORWARD",
"stops": [
{
"id": "NETWORK:StopArea:ABC-A",
"name": "ABC, A",
"stop_points": [
{
"latitude": 46.6544237,
"longitude": 6.505063,
"departures": [
{
"th": "2022-03-22T13:31:00+01:00",
"rt": null,
"destination": "Dest",
"th_platform": "TH",
"platform": "RT",
"cancelled": false,
"additional": false
},
{
"th": "2022-03-22T13:46:00+01:00",
"rt": null,
"destination": "Dest",
"th_platform": "TH",
"platform": "RT",
"cancelled": false,
"additional": false
},
{
"th": "2022-03-22T14:01:00+01:00",
"rt": null,
"destination": "Dest",
"th_platform": "TH",
"platform": "RT",
"cancelled": false,
"additional": false
}
]
},
{
"latitude": 0,
"longitude": 0,
"departures": []
}
]
},
{
"id": "NETWORK:StopArea:ABC-B",
"name": "ABC, B",
"stop_points": [
{
"latitude": 46.6544237,
"longitude": 6.505063,
"departures": [
{
"th": "2022-03-22T13:31:30+01:00",
"rt": null,
"destination": "Dest",
"th_platform": "TH",
"platform": "RT",
"cancelled": false,
"additional": false
},
{
"th": "2022-03-22T13:46:30+01:00",
"rt": null,
"destination": "Dest",
"th_platform": "TH",
"platform": "RT",
"cancelled": false,
"additional": false
}
]
}
]
}
]
}
}
}
Please note it is possible to subscribe to the Fetch Line API as follow:
subscription {
line(line_id: "NETWORK:Line:123", way:FORWARD) {
id
name
way
stops {
id
name
stop_points {
id
departures {
th
rt
destination
th_platform
platform
cancelled
additional
}
latitude
longitude
}
}
}
}
Fetch StopPoint
Allows to fetch information related to a specific StopPoint.
It is possible to include or exlude specific lines on connecting_lines using the include_line_ids and exclude_line_ids parameters.
Example query:
fragment StopPoint on StopPointWithConnections {
id
latitude
longitude
platform
name
connecting_lines {
id
name
colour
}
}
query {
network {
stop_point(id:"NETWORK:StopArea:ABC-A") {
...StopPoint
connecting_lines {
departures {
th
rt
additional
cancelled
destination
platform
}
}
}
}
}
Example response:
{
"data": {
"network": {
"stop_point": {
"connecting_lines": [
{
"departures": [
{
"th": "2022-03-25T09:59:00+01:00",
"rt": null,
"additional": false,
"cancelled": false,
"destination": "ABC, A",
"platform": null
},
{
"th": "2022-03-25T10:59:00+01:00",
"rt": null,
"additional": false,
"cancelled": false,
"destination": "ABC, A",
"platform": null
},
{
"th": "2022-03-25T11:59:00+01:00",
"rt": null,
"additional": false,
"cancelled": false,
"destination": "ABC, A",
"platform": null
}
],
"id": "NETWORK:Line:123",
"name": "123",
"colour": "ff0000"
},
{
"departures": [],
"id": "NETWORK:Line:456",
"name": "456",
"colour": "00ff00"
}
],
"id": "Centre-VMCV:StopArea:ABC-A",
"latitude": 46.6544237,
"longitude": 6.505063,
"platform": null,
"name": "ABC-A"
}
}
}
}
Fetch Next Departures for a StopPoint
Allows to fetch next departures information in relation with a given StopPoint. This includes as well external connecting departures such as the ones returned by OJP.
Possible arguments are:
- stop_id: Object ID of the stop area or stop point to get departures for (required)
- lines: Filter by line ids
- excluded_lines: Filter by excluding line ids
- limit: Number of results to return
- external_connections: Include external connections
- internal_connections: Include internal connections
- use_connection_settings: Use configured connection settings for this stop area
Example query:
query {
next_departures(stop_id: "NETWORK:StopArea:ABC-A") {
network
line_id
color
number
kind
stop_point_id
way
origin
destination
th_destination
th_platform
platform
vehicle_journey_id
stop_area_id
aimed_departure_time
expected_departure_time
aimed_arrival_time
expected_arrival_time
departure_status
arrival_status
cancelled_at
order
moved
connection
external
}
}
Example response:
{
"data": {
"next_departures": [
{
"network": "NETWORK A",
"line_id": "NETWORK_A:Line:123",
"color": "ff0000",
"number": "100",
"kind": "bus",
"stop_point_id": "NETWORK_A:StopArea:ABC-A",
"way": "backward",
"origin": "Origin City",
"destination": "Destination City",
"th_destination": "Origin City",
"th_platform": "A",
"platform": "A",
"vehicle_journey_id": "NETWORK_A:VehicleJourney:VJ_123",
"stop_area_id": "NETWORK_A:StopArea:ABC",
"aimed_departure_time": "2025-08-06T08:39:00+02:00",
"expected_departure_time": "2025-08-06T08:39:00+02:00",
"aimed_arrival_time": "2025-08-06T08:38:00+02:00",
"expected_arrival_time": "2025-08-06T08:38:06+02:00",
"departure_status": "ON_TIME",
"arrival_status": "ON_TIME",
"cancelled_at": null,
"order": 0,
"moved": false,
"connection": false,
"external": false
},
{
"network": "NETWORK B",
"line_id": "ojp:96158:",
"color": null,
"number": "345",
"kind": "bus",
"stop_point_id": "8500000",
"way": "forward",
"origin": "Origin City",
"destination": "Destination City",
"th_destination": "Origin City",
"th_platform": null,
"platform": "E",
"vehicle_journey_id": "ojp:96158::H:j25:13:12345",
"stop_area_id": "",
"aimed_departure_time": "2025-08-06T08:40:00+02:00",
"expected_departure_time": "2025-08-06T08:40:00+02:00",
"aimed_arrival_time": null,
"expected_arrival_time": null,
"departure_status": "ON_TIME",
"arrival_status": "ON_TIME",
"cancelled_at": null,
"order": 0,
"moved": false,
"connection": true,
"external": true
}
]
}
}
VehicleInfo API
The VehicleInfo API is used to retrieve information about vehicles.
Depending on the projects and system integration, it might be possible to have access to deeper information such as odometer, gps or stop requests.
Fetch VehicleInfo
Allows to fetch vehicle informations. Only latest information of a vehicle will be returned.
Example request:
network
{
vehicles
{
kind
number
vehicle_journey {
state
}
gps
{
latitude
longitude
accuracy
timestamp
}
}
}
Example response:
{
"data": {
"network": {
"vehicles": [
{
"kind": "BUS",
"number": "101",
"vehicle_journey": null,
"gps": {
"latitude": 46.6544237,
"longitude": 6.505063,
"accuracy": 34.6335,
"timestamp": "2022-03-22T00:26:10+01:00"
}
},
{
"kind": "BUS",
"number": "102",
"vehicle_journey": null,
"gps": {
"latitude": 46.6544237,
"longitude": 6.505063,
"accuracy": 15.4805,
"timestamp": "2022-03-21T19:05:17+01:00"
}
}
]
}
}
}
It is possible to subscribe to vehicles as well as follow:
subscription
{
vehicle {
id
number
vehicle_journey {
direction
journey_pattern {
direction
objectid
}
objectid
state
}
gps {
latitude
longitude
accuracy
timestamp
}
}
}
Manoeuver API
The Manoeuvre API is used to manipulate disruptions such as deviations, injections or terminus modifications.
Fetch Disruptions
Allows to fetch disruptions.
Example request:
disruptions
{
id
kind
... on RealtimeDeviation {
kind
line_objectid
direction
journey_pattern_objectid
vehicle_journey_objectids
dates
state
entry_stop_point_id
exit_stop_point_id
served_stop_point_ids
unserved_stop_point_ids
impacted_stops {
id
position
departure_time
arrival_time
}
}
... on RealtimeTerminusModification {
id
state
terminus_objectid
vehicle_journey_objectids
new_objectid
direction
line_objectid
journey_pattern_objectid
dates
unserved_start_stop_point_ids
unserved_end_stop_point_ids
}
... on RealtimeInjection {
id
state
direction
line_objectid
journey_pattern_objectid
dates
stops {
objectid
arrival_time
departure_time
state
platform_name
}
}
}
Example response:
{
"data": {
"disruptions": [
{
"id": "NETWORK:VehicleJourney:123 - A - 101 - 9463cf33",
"kind": "INJECTION",
"state": "ACTIVE",
"direction": "FORWARD",
"line_objectid": "NETWORK:Line:123",
"journey_pattern_objectid": "NETWORK:JourneyPattern:123 - A - 101",
"dates": [
"18.03.2022",
"19.03.2022"
],
"stops": [
{
"objectid": "NETWORK:StopArea:ABC_GARE-10",
"arrival_time": null,
"departure_time": "19:55:00",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_POST-02",
"arrival_time": "19:55:29",
"departure_time": "19:55:29",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_CASI-01",
"arrival_time": "19:56:31",
"departure_time": "19:56:31",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_TEMP-01",
"arrival_time": "19:57:00",
"departure_time": "19:57:00",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_BLAN-01",
"arrival_time": "19:58:21",
"departure_time": "19:58:21",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_PVER-01",
"arrival_time": "19:59:27",
"departure_time": "19:59:27",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_BIEF-01",
"arrival_time": "20:00:01",
"departure_time": "20:00:01",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_TAUD-01",
"arrival_time": "20:01:00",
"departure_time": "20:01:00",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_VILL-01",
"arrival_time": "20:02:40",
"departure_time": "20:02:40",
"state": "ACTIVE",
"platform_name": null
},
{
"objectid": "NETWORK:StopArea:ABC_PIER-01",
"arrival_time": "20:04:40",
"departure_time": null,
"state": "ACTIVE",
"platform_name": null
}
]
}
]
}
}
It's possible to filter disruptions by kind.
Possible values: DEVIATION, INJECTION, TERMINUS_MODIFICATION
Example request:
{
disruptions(kinds:[DEVIATION]) {
id
kind
line_objectid
direction
journey_pattern_objectid
vehicle_journey_objectids
dates
state
...on RealtimeDeviation {
entry_stop_point_id
exit_stop_point_id
served_stop_point_ids
unserved_stop_point_ids
impacted_stops {
id
position
departure_time
arrival_time
}
}
}
}
Example response:
[
{
"id": "f3e01c9a02644tz7yfee8342a5de52a8",
"kind": "DEVIATION",
"line_objectid": "NETWORK:Line:LIGNE1",
"direction": "FORWARD",
"journey_pattern_objectid": "NETWORK:JourneyPattern:L1R1",
"vehicle_journey_objectids": [
"NETWORK:VehicleJourney:MIL30625"
],
"dates": [
"14.08.2018"
],
"state": "ACTIVE",
"entry_stop_point_id": "NETWORK:StopArea:GARE01",
"exit_stop_point_id": "NETWORK:StopArea:GYM01",
"served_stop_point_ids": [
"NETWORK:StopArea:ABC01"
],
"unserved_stop_point_ids": [
"NETWORK:StopArea:DEF01",
"NETWORK:StopArea:GHI01"
],
"impacted_stops": []
}
]
It is possible to subscribe to disruptions.
subscription Deviation {
deviation {
id
dates
direction
impacted_stops {
id
arrival_time
departure_time
position
}
entry_stop_point_id
exit_stop_point_id
served_stop_point_ids
unserved_stop_point_ids
journey_pattern_objectid
kind
line_objectid
state
vehicle_journey_objectids
}
}
subscription DeviationCancellations {
deviation_cancelled
}
subscription TerminusModification {
terminus_modification {
id
dates
direction
journey_pattern_objectid
kind
line_objectid
new_objectid
state
terminus_objectid
vehicle_journey_objectids
unserved_start_stop_point_ids
unserved_end_stop_point_ids
}
}
subscription TerminusModificationCancellations {
terminus_modification_cancelled
}
subscription Injection {
injection {
id
dates
direction
journey_pattern_objectid
kind
line_objectid
state
stops {
objectid
arrival_time
departure_time
platform_name
state
th_platform_name
}
vehicle_journey_objectids
}
}
subscription InjectionCancellations {
injection_cancelled
}
TM Creation
Create a new Terminus Modification
Example request:
mutation {
create_terminus_modification(terminus_modification: {line_objectid: "NETWORK:Line:LINE_ID", direction: FORWARD, journey_pattern_objectid: "NETWORK:JourneyPattern:JP_ID", terminus_objectid: "NETWORK:StopArea:SP_ID" new_terminus_objectid: "NETWORK:StopArea:NEW_SP_ID", vehicle_journey_objectids: ["NETWORK:VehicleJourney:VJ_ID"]}) {
terminus_modifications{
dates
direction
id
journey_pattern_objectid
kind
line_objectid
new_objectid
state
terminus_objectid
vehicle_journey_objectids
unserved_start_stop_point_ids
unserved_end_stop_point_ids
}
}
}
Example response:
{
"data": {
"create_terminus_modification": {
"terminus_modifications": [
{
"dates": [
"24.11.2022"
],
"direction": "FORWARD",
"id": "VE0tMTE2Mg==",
"journey_pattern_objectid": "NETWORK:JourneyPattern:JP_ID",
"kind": "TERMINUS_MODIFICATION",
"line_objectid": "NETWORK:Line:LINE_ID",
"new_objectid": "NETWORK:StopArea:NEW_SP_ID",
"state": "ACTIVE",
"terminus_objectid": "NETWORK:StopArea:SP_ID",
"vehicle_journey_objectids": [
"NETWORK:VehicleJourney:VJ_ID"
],
"unserved_start_stop_point_ids": [
"NETWORK:StopArea:ABC-01",
"NETWORK:StopArea:DEF-01",
"NETWORK:StopArea:GHI-01",
"NETWORK:StopArea:JKL-01",
"NETWORK:StopArea:MNO-01"
],
"unserved_end_stop_point_ids": []
}
]
}
}
}
TM Deletion
Delete an existing Terminus Modification
Example request:
mutation {
delete_terminus_modification(id: "VE0tMTE2Mg==") {
errors
}
}
Example response:
{
"data": {
"delete_terminus_modification": {
"errors": []
}
}
}
Injection Creation
Create a new Injection.
Please note that you need to use StopPoints and not StopAreas when defining the Stops.
Example request:
mutation {
create_injection(injection: {line_objectid: "NETWORK:Line:LINE_ID", direction: FORWARD, journey_pattern_objectid: "NETWORK:JourneyPattern:JP_ID", date_start: "2022-11-24", date_end: "2022-11-24", stops: [{stop_point_objectid: "NETWORK:StopPoint:SP_ID_1", departure_time: "16:12:00", arrival_time: "16:11:00"}, {stop_point_objectid: "NETWORK:StopPoint:SP_ID_2", departure_time: "16:15:00", arrival_time: "16:15:00"}, {stop_point_objectid: "NETWORK:StopPoint:SP_ID_3", departure_time: "16:20:00", arrival_time: "16:18:00"}]}) {
injection {
dates
direction
id
journey_pattern_objectid
kind
line_objectid
state
stops {
arrival_time
departure_time
objectid
platform_name
state
th_platform_name
}
vehicle_journey_objectids
}
}
}
Example response:
{
"data": {
"create_injection": {
"injection": {
"dates": [
"24.11.2022"
],
"direction": "FORWARD",
"id": "NETWORK:VehicleJourney:VJ_ID - 02e90081",
"journey_pattern_objectid": "NETWORK:JourneyPattern:JP_ID",
"kind": "INJECTION",
"line_objectid": "NETWORK:Line:LINE_ID",
"state": "ACTIVE",
"stops": [
{
"arrival_time": "16:11:00",
"departure_time": "16:12:00",
"objectid": "NETWORK:StopArea:SP_ID_1",
"platform_name": null,
"state": "ACTIVE",
"th_platform_name": null
},
{
"arrival_time": "16:15:00",
"departure_time": "16:15:00",
"objectid": "NETWORK:StopArea:SP_ID_2",
"platform_name": null,
"state": "ACTIVE",
"th_platform_name": null
},
{
"arrival_time": "16:18:00",
"departure_time": "16:20:00",
"objectid": "NETWORK:StopArea:SP_ID_3",
"platform_name": null,
"state": "ACTIVE",
"th_platform_name": null
}
],
"vehicle_journey_objectids": [
"NETWORK:VehicleJourney:VJ_ID - 02e90081"
]
}
}
}
}
Injection Update
Update an Injection
Example request:
mutation {
update_injection(objectid: "NETWORK:VehicleJourney:VJ_ID - c544388e", injection: {line_objectid: "NETWORK:Line:LINE_ID", direction: FORWARD, journey_pattern_objectid: "NETWORK:JourneyPattern:JP_ID", date_start: "2022-11-24", date_end: "2022-11-24", stops: [{stop_point_objectid: "NETWORK:StopPoint:SP_ID_1", departure_time: "16:13:00", arrival_time: "16:12:00"}, {stop_point_objectid: "NETWORK:StopPoint:SP_ID_2", departure_time: "16:16:00", arrival_time: "16:16:00"}, {stop_point_objectid: "NETWORK:StopPoint:SP_ID_3", departure_time: "16:21:00", arrival_time: "16:19:00"}]}) {
injection {
dates
direction
id
journey_pattern_objectid
kind
line_objectid
state
stops {
arrival_time
departure_time
objectid
platform_name
state
th_platform_name
}
vehicle_journey_objectids
}
}
}
Example response:
{
"data": {
"update_injection": {
"injection": {
"dates": [
"24.11.2022"
],
"direction": "FORWARD",
"id": "NETWORK:VehicleJourney:VJ_ID - c544388e",
"journey_pattern_objectid": "NETWORK:JourneyPattern:JP_ID",
"kind": "INJECTION",
"line_objectid": "NETWORK:Line:LINE_ID",
"state": "ACTIVE",
"stops": [
{
"arrival_time": "16:12:00",
"departure_time": "16:13:00",
"objectid": "NETWORK:StopArea:SP_ID_1",
"platform_name": null,
"state": "ACTIVE",
"th_platform_name": null
},
{
"arrival_time": "16:16:00",
"departure_time": "16:16:00",
"objectid": "NETWORK:StopArea:SP_ID_2",
"platform_name": null,
"state": "ACTIVE",
"th_platform_name": null
},
{
"arrival_time": "16:19:00",
"departure_time": "16:21:00",
"objectid": "NETWORK:StopArea:SP_ID_3",
"platform_name": null,
"state": "ACTIVE",
"th_platform_name": null
}
],
"vehicle_journey_objectids": [
"NETWORK:VehicleJourney:VJ_ID - c544388e"
]
}
}
}
}
Injection Deletion
Delete an Injection
Example request:
mutation {
delete_injection(id: "NETWORK:VehicleJourney:VJ_ID - 02e90081") {
errors
}
}
Example response:
{
"data": {
"delete_injection": {
"errors": []
}
}
}
VehicleJourney API
The VehicleJourney API allows to retrieves information about Vehicle Journeys and Stops
Deactivate a Stop
Deactivate a Stop of a VehicleJourney
Example request:
mutation {
update_vehicle_journey_stop(stop: {vehicle_journey_objectid: "NETWORK:VehicleJourney:VJ_ID", stop_objectid: "NETWORK:StopArea:STOP_ID", state: INACTIVE}) {
stop {
objectid
state
}
}
}
Example response:
{
"data": {
"update_vehicle_journey_stop": {
"stop": {
"objectid": "NETWORK:StopArea:STOP_ID",
"state": "INACTIVE"
}
}
}
}
Activate a Stop
Activate a Stop of a VehicleJourney
Example request:
mutation {
update_vehicle_journey_stop(stop: {vehicle_journey_objectid: "NETWORK:VehicleJourney:VJ_ID", stop_objectid: "NETWORK:StopArea:STOP_ID", state: ACTIVE}) {
stop {
objectid
state
}
}
}
Example response:
{
"data": {
"update_vehicle_journey_stop": {
"stop": {
"objectid": "NETWORK:StopArea:STOP_ID",
"state": "ACTIVE"
}
}
}
}
Departure Delay
Define a delay to a departure
Example request:
mutation {
update_vehicle_journey_stop(stop: {vehicle_journey_objectid: "NETWORK:VehicleJourney:VJ_ID", stop_objectid: "NETWORK:StopArea:STOP_ID", departure_delay: 60}) {
stop {
objectid
departure_time
}
}
}
Example response:
{
"data": {
"update_vehicle_journey_stop": {
"stop": {
"objectid": "NETWORK:StopArea:STOP_ID",
"departure_time": "14:26:00"
}
}
}
}
Arrival Delay
Define a delay to an arrival
Example request:
mutation {
update_vehicle_journey_stop(stop: {vehicle_journey_objectid: "NETWORK:VehicleJourney:VJ_ID", stop_objectid: "NETWORK:StopArea:STOP_ID", arrival_delay: 120}) {
stop {
objectid
arrival_time
}
}
}
Example response:
{
"data": {
"update_vehicle_journey_stop": {
"stop": {
"objectid": "NETWORK:StopArea:STOP_ID",
"arrival_time": "14:28:00"
}
}
}
}
Platform Change
Make a platform change.
The platform must exists and have been assigned to a StopPoint in order for this function to work properly.
Example request:
mutation {
update_vehicle_journey_stop(stop: {vehicle_journey_objectid: "NETWORK:VehicleJourney:VJ_ID", stop_objectid: "NETWORK:StopArea:STOP_ID", platform_name: "A"}) {
stop {
objectid
platform_name
}
}
}
Example response:
{
"data": {
"update_vehicle_journey_stop": {
"stop": {
"objectid": "NETWORK:StopArea:STOP_ID",
"platform_name": "A"
}
}
}
}
Deactivate a VehicleJourney
Deactivates an entire VehicleJourney
Example request:
mutation {
update_vehicle_journey(vehicle_journey_objectid: "NETWORK:VehicleJourney:VJ_ID", state: INACTIVE) {
vehicle_journey {
objectid
state
}
}
}
Example response:
{
"data": {
"update_vehicle_journey": {
"vehicle_journey": {
"objectid": "NETWORK:VehicleJourney:VJ_ID",
"state": "INACTIVE"
}
}
}
}
Activate a VehicleJourney
Activates an entire VehicleJourney
Example request:
mutation {
update_vehicle_journey(vehicle_journey_objectid: "NETWORK:VehicleJourney:VJ_ID", state: ACTIVE) {
vehicle_journey {
objectid
state
}
}
}
Example response:
{
"data": {
"update_vehicle_journey": {
"vehicle_journey": {
"objectid": "NETWORK:VehicleJourney:VJ_ID",
"state": "ACTIVE"
}
}
}
}
Fetch Vehicle Journeys
Allows to fetch a list of vehicle journeys
Example request:
{
network {
lines {
vehicle_journeys {
stops {
objectid
th_platform_name
platform_name
arrival_time
departure_time
state
vehicle_journey {
direction
objectid
state
}
}
}
}
}
}
Example response:
{
"network": {
"lines": [
{
"vehicle_journeys": [
{
"stops": [
{
"objectid": "NETWORK:StopArea:GARE01",
"th_platform_name": "Quai Gare",
"platform_name": "Platform RT",
"arrival_time": "06:37:00",
"departure_time": "06:38:00",
"state": "ACTIVE",
"vehicle_journey": {
"direction": "FORWARD",
"objectid": "NETWORK:VehicleJourney:MIL30625",
"state": "ACTIVE"
}
}
]
}
]
}
]
}
}
Fetch One Vehicle Journey
Allows to fetch the details of one specific vehicle journey
Example request:
query($objectid: ID!) {
vehicle_journey(id:$objectid) {
objectid
id
journey_pattern_id
way
time_table_ids
schedules
stops {
objectid
departure_time
arrival_time
platform_name
th_platform_name
state
}
}
}
Example response:
{
"data": {
"vehicle_journey": {
"objectid": "NETWORK:VehicleJourney:123",
"id": "NETWORK:VehicleJourney:123",
"journey_pattern_id": "NETWORK:JourneyPattern:123",
"way": "F",
"time_table_ids": [
"NETWORK:TimeTable:1"
],
"schedules": [
{
"stop_point_id": "NETWORK:StopArea:ABC-A",
"arrival_time": null,
"departure_time": "05:46:00",
"via_tts_name": null,
"via_name": null,
"destination_id": "10",
"destination_name": "ABC",
"destination_tts_name": "ABC",
"distance": 310
},
{
"stop_point_id": "NETWORK:StopArea:DEF-A",
"arrival_time": "05:47:00",
"departure_time": "05:47:00",
"via_tts_name": null,
"via_name": null,
"destination_id": null,
"destination_name": null,
"destination_tts_name": null,
"distance": 259
}
],
"stops": [
{
"objectid": "NETWORK:StopArea:ABC-A",
"departure_time": "05:46:18",
"arrival_time": null,
"platform_name": "A",
"th_platform_name": "A",
"state": "INACTIVE"
},
{
"objectid": "NETWORK:StopArea:DEF-A",
"departure_time": "05:47:32",
"arrival_time": "05:47:04",
"platform_name": null,
"th_platform_name": null,
"state": "INACTIVE"
}
]
}
}
}
Fetch Cancelled Vehicle Journeys
Allows to fetch canceled vehicle journeys
Example request:
{
cancelled_vehicle_journeys
}
Example response:
{
"data": {
"cancelled_vehicle_journeys": [
"NETWORK:VehicleJourney:123"
]
}
}
It's possible to subscribe to cancellation and activation of vehicle journeys
subscription { vehicle_journey_activated }
subscription { vehicle_journey_cancelled }
Fetch Cancelled Vehicle Journeys Details
Allows to fetch details of canceled vehicle journeys
Example request:
query {
cancelled_vehicle_journey_details {
objectid
id
journey_pattern_id
way
time_table_ids
schedules
stops {
objectid
departure_time
arrival_time
platform_name
th_platform_name
state
}
}
}
Example response:
{
"data": {
"cancelled_vehicle_journeys": [
{
"objectid": "NETWORK:VehicleJourney:123",
"id": "NETWORK:VehicleJourney:123",
"journey_pattern_id": "NETWORK:JourneyPattern:123",
"way": "F",
"time_table_ids": [
"NETWORK:TimeTable:1"
],
"schedules": [
{
"stop_point_id": "NETWORK:StopArea:ABC-A",
"arrival_time": null,
"departure_time": "05:46:00",
"via_tts_name": null,
"via_name": null,
"destination_id": "10",
"destination_name": "ABC",
"destination_tts_name": "ABC",
"distance": 310
},
{
"stop_point_id": "NETWORK:StopArea:DEF-A",
"arrival_time": "05:47:00",
"departure_time": "05:47:00",
"via_tts_name": null,
"via_name": null,
"destination_id": null,
"destination_name": null,
"destination_tts_name": null,
"distance": 259
}
],
"stops": [
{
"objectid": "NETWORK:StopArea:ABC-A",
"departure_time": "05:46:18",
"arrival_time": null,
"platform_name": "A",
"th_platform_name": "A",
"state": "INACTIVE"
},
{
"objectid": "NETWORK:StopArea:DEF-A",
"departure_time": "05:47:32",
"arrival_time": "05:47:04",
"platform_name": null,
"th_platform_name": null,
"state": "INACTIVE"
}
]
}
]
}
}
Import API
The Import API allows to programatically schedule an import process through tasks.
Tasks are scheduled to run at a certain time and will import the latest input/import.
An Input represents a list of files to be imported as a whole. It contains the full theorical dataset to load.
A Direct Upload is what allows to actually upload one file on the server. A Direct Upload request will have to be made first in order for the API to return the information to actually upload the file.
Once a Direct Upload has been made, the actual process of uploading a file is made using something like curl or any http library.
Create Direct Upload
Used to create a Direct Upload object that can be used to upload a file by POSTing it.
You declare the kind of file you want to upload as well as its expected etag.
Example request:
mutation {
create_direct_upload(input: {filename: "LINE.x10", etag: "46372186c25ef27a108550167a434b7a", content_type: "text/plain" }) {
direct_upload {
form_data
id
method
url
}
}
}
Example response:
{
"data": {
"create_direct_upload": {
"direct_upload": {
"form_data": {
"AWSAccessKeyID": "AKIDBFGHSHBDBKDHKSDB",
"x-amz-server-side-encryption": "AES256",
"key": "direct_uploads/network/c0014182-c27e-4d67-bf82-95f9d82e4edc/${filename}",
"success_action_status": "201",
"acl": "public-read",
"policy": "eyJoeHBpcmF0aW9uIjoiMjAyMi0xMS0yNFQxMjoyMzowOFoiLCJjb25kaXRpb25zIjpbeyJidWNrZXQiOiJnbS1zaXR0ci1zdGFnaW5nIn0seyJhY2wiOiJwdWJsaWMtcmVhZCJ9LHsieC1hbXotc2VydmVyLXNpZGUtZW5jcnlwdGlvbiI6IkFFUzI1NiJ9LHsic3VjY2Vzc19hY3Rpb25fc3RhdHVzIjoiMjAxIn0sWyJzdGFydHMtd2l0aCIsIiRjb250ZW50LXR5cGUiLCIiXSxbInN0YXJ0cy13aXRoIiwiJGNvbnRlbnQtZGlzcG9zaXRpb24iLCIiXSxbInN0YXJ0cy13aXRoIiwiJGtleSIsImRpcmVjdF91cGxvYWRzL25ldHdvcmtfOC9jMDAxNDE4Mi1jMjdlLTRkNjctYmY4Mi05NWY5ZDgyZTRlZGMvIl1dfQ==",
"signature": "7+Et+Ifll/XQiw0v/fip08Ueim2=",
"content-type": "text/plain",
"content-disposition": "inline; filename=\"LINE.x10\""
},
"id": "10372",
"method": "POST",
"url": "https://gm-sittr-staging.s3-eu-west-1.amazonaws.com"
}
}
}
}
See DirectUploadObject section for more information about how to upload said files using curl for instance.
Create Input/Import
Used to create a a new Input containing a list of Direct Upload files.
The latest create input/import will always be the one used when a Task is being processed.
Example request:
mutation {
create_input(input: {file_ids: [10372], type: VDV, label: "My Import"}) {
input {
type
id
label
}
}
}
Example response:
{
"data": {
"create_input": {
"input": {
"type": "VDV",
"id": "514",
"label": "My Import"
}
}
}
}
Create Task
Tasks are jobs that are scheduled to import a new dataset.
Example request:
mutation {
create_task(task: {type: IMPORT, run_on: "2022-08-18 12:55:00"}) {
task {
id
}
}
}
Example response:
{
"data": {
"create_task": {
"task": {
"id": "2945"
}
}
}
}
Fetch Tasks
Tasks can be queried to have their statuses
A list of tasks can be queried as follow
Example request:
{
tasks {
id
state
}
}
Example response:
{
"data": {
"tasks": [
{
"id": "473",
"state": "SUCCESS"
},
{
"id": "474",
"state": "SUCCESS"
}
]
}
}
Export API
The Export API allows to retrieve exported data in a specific format or for a specific usage.
Fetch an Export
Retrieves a specific kind of export. Type can be: THEORICAL, RIV, DRIVER, HEADSIGN
Example request:
query {
export(type:RIV) {
checksum
created_at
end_at
id
url
}
}
Example response:
{
"data": {
"export": {
"checksum": "1b68465ca1b5406b70a87f5b0191f7325fb421809078697a2b197f4d2b9fa98b",
"created_at": "2023-01-25T02:08:01+01:00",
"end_at": "2023-01-27T02:30:00+01:00",
"id": "PPwTXL40RqyoSbz0jd8HyA",
"url": "https://xxxx/yyyy.zip"
}
}
}
Note: the checksum is the sha256 of the file and can be computed as follow: shasum -a 256 path/to/file.zip
Directions API
The Directions API allows to fetch the directions based on some parameters.
⚠️ This is a REST-based API. Not a GraphQL one.
List all directions from the given parameters
Supported parameters:
| Parameter | Description |
|---|---|
from_lat, from_lng |
Coordinates of the origin stop. |
from |
Name of the origin stop. |
to_lat, to_lng |
Coordinates of the destination stop. |
to |
Name of the destination stop. |
via, via_didok_id |
Optional VIA stop (by name or DIDOK ID). |
time_mode |
(Optional) Mode for date and time interpretation. One of: - LEAVE_AT (default)- ARRIVE_BY |
datetime |
(Optional) ISO8601-formatted datetime. Defaults to current time. |
token |
Required. Token to access the API. |
Example request:
GET /api/v1/directions?from=Lausanne&to=Morges&token=XXX
GET /api/v1/directions?from_lat=46.51679&from_lng=6.62909&to_lat=46.5111&to_lng=6.49397&token=XXX
Example response:
{
"trips": [
{
"id": "ID-6E82494B-B4D2-4535-8F10-7A27427757F0",
"duration": 2280,
"start_time": "2024-10-17T06:51:30.000+00:00",
"end_time": "2024-10-17T07:29:00.000+00:00",
"transfers": 1,
"distance": 14290,
"legs": [
{
"id": "1",
"mode": "walk",
"start": {...}
"stop": {...},
"start_time": "2024-10-17T06:51:30.000+00:00",
"end_time": "2024-10-17T06:53:30.000+00:00",
"length_metres": 49,
"duration": 120,
"walk_duration": null,
"buffer_duration": null
}
]
}
]
}
| Status Code | Meaning | Description |
|---|---|---|
400 |
Bad Request | The request is invalid (e.g., malformed or incomplete parameters). |
401 |
Unauthorized | The provided token is missing or invalid. |
Stop API
Lists stops based on the search query.
⚠️ This is a REST-based API. Not a GraphQL one.
Supported parameters:
| Parameter | Type | Description |
|---|---|---|
q |
string | The search query. |
Example request:
GET /api/v1/stops?q=Lausanne&token=XXX
Example response:
"stops": [
{
"name": "Lausanne-Flon",
"location": {
"lat": 46.5208,
"lng": 6.63034
},
"didok_id": 8501181,
"transport_modes": ["RAIL"]
}
]
| Status Code | Meaning | Description |
|---|---|---|
400 |
Bad Request | The request is invalid (e.g., malformed or incomplete parameters). |
401 |
Unauthorized | The provided token is missing or invalid. |
Queries
cancelled_vehicle_journey_details
Response
Returns [VehicleJourney!]!
Arguments
| Name | Description |
|---|---|
network - ID
|
Object ID of the network to filter vehicle journeys by |
lines - [String!]
|
Filter by line ids. Default = [] |
way - LineWay
|
Filter by direction. Default = null |
duration - TimeShort
|
Filter by duration in the future. Default = "02:00:00" |
excluded_lines - [String!]
|
Filter by excluding line ids. Default = [] |
include_injected_vehicle_journeys - Boolean
|
Include injected vehicle journeys. Default = false |
page - Int
|
Page number for pagination. Default = 1 |
per_page - Int
|
Number of disruptions per page. Default = 50 |
Example
Query
query cancelled_vehicle_journey_details(
$network: ID,
$lines: [String!],
$way: LineWay,
$duration: TimeShort,
$excluded_lines: [String!],
$include_injected_vehicle_journeys: Boolean,
$page: Int,
$per_page: Int
) {
cancelled_vehicle_journey_details(
network: $network,
lines: $lines,
way: $way,
duration: $duration,
excluded_lines: $excluded_lines,
include_injected_vehicle_journeys: $include_injected_vehicle_journeys,
page: $page,
per_page: $per_page
) {
id
journey_pattern {
direction
objectid
vehicle_journeys {
...VehicleJourneyFragment
}
}
journey_pattern_id
line {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
objectid
schedules
stops {
arrival_time
departure_time
objectid
platform_name
state
th_platform_name
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
time_table_ids
way
}
}
Variables
{
"network": 4,
"lines": [""],
"way": "null",
"duration": "02:00:00",
"excluded_lines": [""],
"include_injected_vehicle_journeys": false,
"page": 1,
"per_page": 50
}
Response
{
"data": {
"cancelled_vehicle_journey_details": [
{
"id": "xyz789",
"journey_pattern": JourneyPattern,
"journey_pattern_id": "abc123",
"line": "NETWORK:Line:123",
"objectid": "abc123",
"schedules": [{}],
"stops": [ExploitationVehicleJourneyStopObject],
"time_table_ids": ["xyz789"],
"way": "xyz789"
}
]
}
}
cancelled_vehicle_journeys
Response
Returns [String!]!
Arguments
| Name | Description |
|---|---|
network - ID
|
Object ID of the network to filter vehicle journeys by |
lines - [String!]
|
Filter by line ids. Default = [] |
way - LineWay
|
Filter by direction. Default = null |
duration - TimeShort
|
Filter by duration in the future. Default = "02:00:00" |
excluded_lines - [String!]
|
Filter by excluding line ids. Default = [] |
include_injected_vehicle_journeys - Boolean
|
Include injected vehicle journeys. Default = false |
page - Int
|
Page number for pagination. Default = 1 |
per_page - Int
|
Number of disruptions per page. Default = 50 |
Example
Query
query cancelled_vehicle_journeys(
$network: ID,
$lines: [String!],
$way: LineWay,
$duration: TimeShort,
$excluded_lines: [String!],
$include_injected_vehicle_journeys: Boolean,
$page: Int,
$per_page: Int
) {
cancelled_vehicle_journeys(
network: $network,
lines: $lines,
way: $way,
duration: $duration,
excluded_lines: $excluded_lines,
include_injected_vehicle_journeys: $include_injected_vehicle_journeys,
page: $page,
per_page: $per_page
)
}
Variables
{
"network": "4",
"lines": [""],
"way": "null",
"duration": "02:00:00",
"excluded_lines": [""],
"include_injected_vehicle_journeys": false,
"page": 1,
"per_page": 50
}
Response
{
"data": {
"cancelled_vehicle_journeys": ["xyz789"]
}
}
disruptions
Response
Returns [DisruptionInterface!]!
Arguments
| Name | Description |
|---|---|
network - ID
|
Object ID of the network to filter disruptions by |
grouped - Boolean
|
Group Disruptions by Journey Pattern. Defaults to true. Default = true |
only_enabled - Boolean
|
Filter only enabled disruptions. Defaults to true. Default = true |
kinds - [DisruptionKindEnum!]
|
Kinds of disruptions. Defaults to return all disruptions. Default = [INJECTION, TERMINUS_MODIFICATION, DEVIATION] |
operating_date - Date
|
Filter disruptions by operating date. Defaults to all disruptions. Default = null |
include_private_lines - Boolean
|
Include private lines in disruptions. Defaults to false. Default = false |
page - Int
|
Page number for pagination. Default = 1 |
per_page - Int
|
Number of disruptions per page. Default = 50 |
Example
Query
query disruptions(
$network: ID,
$grouped: Boolean,
$only_enabled: Boolean,
$kinds: [DisruptionKindEnum!],
$operating_date: Date,
$include_private_lines: Boolean,
$page: Int,
$per_page: Int
) {
disruptions(
network: $network,
grouped: $grouped,
only_enabled: $only_enabled,
kinds: $kinds,
operating_date: $operating_date,
include_private_lines: $include_private_lines,
page: $page,
per_page: $per_page
) {
dates
direction
id
journey_pattern {
direction
objectid
vehicle_journeys {
...VehicleJourneyFragment
}
}
journey_pattern_objectid
kind
line {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
line_objectid
state
vehicle_journey_objectids
vehicle_journeys {
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_id
line {
...LineFragment
}
objectid
schedules
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
time_table_ids
way
}
}
}
Variables
{
"network": "4",
"grouped": true,
"only_enabled": true,
"kinds": ["INJECTION", "TERMINUS_MODIFICATION", "DEVIATION"],
"operating_date": null,
"include_private_lines": false,
"page": 1,
"per_page": 50
}
Response
{
"data": {
"disruptions": [
{
"dates": ["2025-01-01"],
"direction": "FORWARD",
"id": "4",
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "xyz789",
"kind": "TERMINUS_MODIFICATION",
"line": "NETWORK:Line:123",
"line_objectid": "xyz789",
"state": "ACTIVE",
"vehicle_journey_objectids": [
"abc123"
],
"vehicle_journeys": [VehicleJourney]
}
]
}
}
export
Description
Returns the latest export of given type
Response
Returns an ExportObject
Arguments
| Name | Description |
|---|---|
network - ID
|
Object ID of the network |
type - ExportType!
|
The Type of export |
Example
Query
query export(
$network: ID,
$type: ExportType!
) {
export(
network: $network,
type: $type
) {
checksum
created_at
end_at
id
url
}
}
Variables
{"network": 4, "type": "THEORICAL"}
Response
{
"data": {
"export": {
"checksum": "xyz789",
"created_at": "10:15:30Z",
"end_at": "10:15:30Z",
"id": "4",
"url": "abc123"
}
}
}
line
Description
Returns the line with stop points and departures
Response
Returns a LineWithDepartures!
Example
Query
query line(
$line_id: String!,
$way: LineWay!
) {
line(
line_id: $line_id,
way: $way
) {
blocks {
end_stop_point_id
id
objectid
start_stop_point_id
time_table_id
vehicle_journey_ids
}
color
hlp_routes {
journey_pattern_id
stop_points
}
id
name
network_id
number
objectid
published_name
stop_areas {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_points {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
stop_points_departures {
departures {
...DepartureFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
stops {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithDeparturesFragment
}
tts_name
}
thermometer_stop_areas {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
time_tables {
days
id
objectid
}
transport_type
tts_name
type
vehicle_journeys {
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_id
line {
...LineFragment
}
objectid
schedules
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
time_table_ids
way
}
way
}
}
Variables
{"line_id": "xyz789", "way": "FORWARD"}
Response
{
"data": {
"line": {
"blocks": [Block],
"color": "abc123",
"hlp_routes": [HlpRoute],
"id": "xyz789",
"name": "xyz789",
"network_id": "abc123",
"number": 123,
"objectid": "xyz789",
"published_name": "xyz789",
"stop_areas": [StopArea],
"stop_points": [StopPoint],
"stop_points_departures": [StopPointWithDepartures],
"stops": [StopAreaWithDepartures],
"thermometer_stop_areas": [StopArea],
"time_tables": [TimeTable],
"transport_type": "xyz789",
"tts_name": "abc123",
"type": "xyz789",
"vehicle_journeys": [VehicleJourney],
"way": "FORWARD"
}
}
}
messages
Description
Returns scheduled messages for the given filters
Response
Returns [Message!]!
Arguments
| Name | Description |
|---|---|
type - MessageType!
|
|
start_time - Time!
|
|
end_time - Time!
|
|
active - Boolean
|
Example
Query
query messages(
$type: MessageType!,
$start_time: Time!,
$end_time: Time!,
$active: Boolean
) {
messages(
type: $type,
start_time: $start_time,
end_time: $end_time,
active: $active
) {
content {
enabled
}
id
reason
schedule {
continuous
end_date
end_time
friday
monday
saturday
start_date
start_time
sunday
thursday
tuesday
wednesday
}
target {
... on LinesTarget {
...LinesTargetFragment
}
... on LocationTarget {
...LocationTargetFragment
}
... on NetworkTarget {
...NetworkTargetFragment
}
... on PlayersTarget {
...PlayersTargetFragment
}
}
title
}
}
Variables
{
"type": "WEB_SITE",
"start_time": "10:15:30Z",
"end_time": "10:15:30Z",
"active": true
}
Response
{
"data": {
"messages": [
{
"content": Content,
"id": 4,
"reason": "abc123",
"schedule": Planning,
"target": LinesTarget,
"title": "abc123"
}
]
}
}
network
Description
Returns the network
Response
Returns a Network
Arguments
| Name | Description |
|---|---|
id - ID
|
Optionally select the network by it's Object ID |
line_ids - [String!]
|
Limit the the lines and lines_meta fields to include specific lines |
skip_if_version - String
|
Only returns network if it is not the specified version |
lines_offset - Int
|
Paginate the lines field by an offset |
lines_limit - Int
|
Paginate the lines field by number of lines per page |
Example
Query
query network(
$id: ID,
$line_ids: [String!],
$skip_if_version: String,
$lines_offset: Int,
$lines_limit: Int
) {
network(
id: $id,
line_ids: $line_ids,
skip_if_version: $skip_if_version,
lines_offset: $lines_offset,
lines_limit: $lines_limit
) {
bivs {
bindings {
...BIVBindingFragment
}
external_bivs {
...ExternalBIVFragment
}
id
name
player_serials
}
end_at
lines {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
lines_meta
name
objectid
situation {
cause
consequences {
...SituationConsequenceFragment
}
creation_time
id
participant_ref
planned
priority
publication_window_end_time
publication_window_start_time
publication_windows {
...SituationTimePeriodFragment
}
publishing_actions {
...SituationPublishingActionFragment
}
reason_name {
...SituationLocalizedTextFragment
}
scope_type
situation_number
summary {
...SituationLocalizedTextFragment
}
targets {
...SituationTargetFragment
}
validity_end_time
validity_periods {
...SituationTimePeriodFragment
}
validity_start_time
version
}
situations {
cause
consequences {
...SituationConsequenceFragment
}
creation_time
id
participant_ref
planned
priority
publication_window_end_time
publication_window_start_time
publication_windows {
...SituationTimePeriodFragment
}
publishing_actions {
...SituationPublishingActionFragment
}
reason_name {
...SituationLocalizedTextFragment
}
scope_type
situation_number
summary {
...SituationLocalizedTextFragment
}
targets {
...SituationTargetFragment
}
validity_end_time
validity_periods {
...SituationTimePeriodFragment
}
validity_start_time
version
}
stop_area {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_areas {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_point {
connecting_lines {
...StopPointConnectingLineFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
stop_points {
connecting_lines {
...StopPointConnectingLineFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
vehicles {
current_stop {
...ExploitationVehicleJourneyStopObjectFragment
}
current_stop_state
gps {
...LocationObjectFragment
}
id
kind
master
number
odometer_km
player_serials
stop_requested
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
version
}
}
Variables
{
"id": "4",
"line_ids": ["abc123"],
"skip_if_version": "xyz789",
"lines_offset": 987,
"lines_limit": 123
}
Response
{
"data": {
"network": {
"bivs": [BIV],
"end_at": "2025-01-01",
"lines": ["NETWORK:Line:123"],
"lines_meta": {},
"name": "abc123",
"objectid": "xyz789",
"situation": Situation,
"situations": [Situation],
"stop_area": StopArea,
"stop_areas": [StopArea],
"stop_point": StopPointWithConnections,
"stop_points": [StopPointWithConnections],
"vehicles": [Vehicle],
"version": "abc123"
}
}
}
networks
Description
Returns the network
Response
Returns [Network!]!
Arguments
| Name | Description |
|---|---|
ids - [ID!]
|
Object IDs of networks to select. Returns all networks if not specified |
line_ids - [String!]
|
Limit the the lines and lines_meta fields to include specific lines |
lines_offset - Int
|
Paginate the lines field by an offset |
lines_limit - Int
|
Paginate the lines field by number of lines per page |
Example
Query
query networks(
$ids: [ID!],
$line_ids: [String!],
$lines_offset: Int,
$lines_limit: Int
) {
networks(
ids: $ids,
line_ids: $line_ids,
lines_offset: $lines_offset,
lines_limit: $lines_limit
) {
bivs {
bindings {
...BIVBindingFragment
}
external_bivs {
...ExternalBIVFragment
}
id
name
player_serials
}
end_at
lines {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
lines_meta
name
objectid
situation {
cause
consequences {
...SituationConsequenceFragment
}
creation_time
id
participant_ref
planned
priority
publication_window_end_time
publication_window_start_time
publication_windows {
...SituationTimePeriodFragment
}
publishing_actions {
...SituationPublishingActionFragment
}
reason_name {
...SituationLocalizedTextFragment
}
scope_type
situation_number
summary {
...SituationLocalizedTextFragment
}
targets {
...SituationTargetFragment
}
validity_end_time
validity_periods {
...SituationTimePeriodFragment
}
validity_start_time
version
}
situations {
cause
consequences {
...SituationConsequenceFragment
}
creation_time
id
participant_ref
planned
priority
publication_window_end_time
publication_window_start_time
publication_windows {
...SituationTimePeriodFragment
}
publishing_actions {
...SituationPublishingActionFragment
}
reason_name {
...SituationLocalizedTextFragment
}
scope_type
situation_number
summary {
...SituationLocalizedTextFragment
}
targets {
...SituationTargetFragment
}
validity_end_time
validity_periods {
...SituationTimePeriodFragment
}
validity_start_time
version
}
stop_area {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_areas {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_point {
connecting_lines {
...StopPointConnectingLineFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
stop_points {
connecting_lines {
...StopPointConnectingLineFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
vehicles {
current_stop {
...ExploitationVehicleJourneyStopObjectFragment
}
current_stop_state
gps {
...LocationObjectFragment
}
id
kind
master
number
odometer_km
player_serials
stop_requested
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
version
}
}
Variables
{
"ids": ["4"],
"line_ids": ["xyz789"],
"lines_offset": 987,
"lines_limit": 987
}
Response
{
"data": {
"networks": [
{
"bivs": [BIV],
"end_at": "2025-01-01",
"lines": ["NETWORK:Line:123"],
"lines_meta": {},
"name": "xyz789",
"objectid": "abc123",
"situation": Situation,
"situations": [Situation],
"stop_area": StopArea,
"stop_areas": [StopArea],
"stop_point": StopPointWithConnections,
"stop_points": [StopPointWithConnections],
"vehicles": [Vehicle],
"version": "abc123"
}
]
}
}
next_departures
Response
Returns [StopAreaDeparture!]!
Arguments
| Name | Description |
|---|---|
stop_id - String!
|
Object ID of the stop area or stop point to get departures for |
lines - [String!]
|
Filter by line ids. Default = [] |
excluded_lines - [String!]
|
Filter by excluding line ids. Default = [] |
limit - Int
|
Number of results to return. Default = 10 |
external_connections - Boolean
|
Include external connections. Default = true |
internal_connections - Boolean
|
Include internal connections. Default = true |
use_connection_settings - Boolean
|
Use configured connection settings for this stop area. Default = true |
Example
Query
query next_departures(
$stop_id: String!,
$lines: [String!],
$excluded_lines: [String!],
$limit: Int,
$external_connections: Boolean,
$internal_connections: Boolean,
$use_connection_settings: Boolean
) {
next_departures(
stop_id: $stop_id,
lines: $lines,
excluded_lines: $excluded_lines,
limit: $limit,
external_connections: $external_connections,
internal_connections: $internal_connections,
use_connection_settings: $use_connection_settings
) {
aimed_arrival_time
aimed_departure_time
arrival_status
cancelled_at
color
connection
departure_status
destination
expected_arrival_time
expected_departure_time
external
kind
line_id
moved
network
number
order
origin
platform
stop_area_id
stop_point_id
th_destination
th_platform
vehicle_journey_id
way
}
}
Variables
{
"stop_id": "xyz789",
"lines": [""],
"excluded_lines": [""],
"limit": 10,
"external_connections": true,
"internal_connections": true,
"use_connection_settings": true
}
Response
{
"data": {
"next_departures": [
{
"aimed_arrival_time": "10:15:30Z",
"aimed_departure_time": "10:15:30Z",
"arrival_status": "ON_TIME",
"cancelled_at": "10:15:30Z",
"color": "xyz789",
"connection": true,
"departure_status": "ON_TIME",
"destination": "abc123",
"expected_arrival_time": "10:15:30Z",
"expected_departure_time": "10:15:30Z",
"external": true,
"kind": "abc123",
"line_id": "abc123",
"moved": false,
"network": "abc123",
"number": "abc123",
"order": 123,
"origin": "xyz789",
"platform": "xyz789",
"stop_area_id": "xyz789",
"stop_point_id": "xyz789",
"th_destination": "xyz789",
"th_platform": "xyz789",
"vehicle_journey_id": "abc123",
"way": "abc123"
}
]
}
}
tasks
Description
Returns the tasks ordered in descending order by their run date
Response
Returns [TaskObject!]!
Example
Query
query tasks(
$network: ID,
$limit: Int,
$offset: Int
) {
tasks(
network: $network,
limit: $limit,
offset: $offset
) {
duration
id
input {
id
label
type
}
run_at
state
type
}
}
Variables
{"network": 4, "limit": 25, "offset": 0}
Response
{
"data": {
"tasks": [
{
"duration": TimeShort,
"id": "4",
"input": InputObject,
"run_at": "10:15:30Z",
"state": "QUEUED",
"type": "IMPORT"
}
]
}
}
vehicle_journey
Description
Returns the vehicle journey
Response
Returns a VehicleJourney
Arguments
| Name | Description |
|---|---|
id - ID!
|
Object ID of the vehicle journey |
Example
Query
query vehicle_journey($id: ID!) {
vehicle_journey(id: $id) {
id
journey_pattern {
direction
objectid
vehicle_journeys {
...VehicleJourneyFragment
}
}
journey_pattern_id
line {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
objectid
schedules
stops {
arrival_time
departure_time
objectid
platform_name
state
th_platform_name
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
time_table_ids
way
}
}
Variables
{"id": 4}
Response
{
"data": {
"vehicle_journey": {
"id": "xyz789",
"journey_pattern": JourneyPattern,
"journey_pattern_id": "abc123",
"line": "NETWORK:Line:123",
"objectid": "xyz789",
"schedules": [{}],
"stops": [ExploitationVehicleJourneyStopObject],
"time_table_ids": ["xyz789"],
"way": "abc123"
}
}
}
Mutations
create_direct_upload
Description
Create a Direct Upload for uploading a file.
Response
Returns a CreateDirectUploadPayload
Arguments
| Name | Description |
|---|---|
input - DirectUploadInputObject!
|
Example
Query
mutation create_direct_upload($input: DirectUploadInputObject!) {
create_direct_upload(input: $input) {
direct_upload {
form_data
id
method
url
}
errors
}
}
Variables
{"input": DirectUploadInputObject}
Response
{
"data": {
"create_direct_upload": {
"direct_upload": DirectUploadObject,
"errors": ["xyz789"]
}
}
}
create_injection
Response
Returns a CreateInjectionPayload
Arguments
| Name | Description |
|---|---|
injection - InjectionInputObject!
|
Example
Query
mutation create_injection($injection: InjectionInputObject!) {
create_injection(injection: $injection) {
errors
injection {
dates
direction
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_objectid
kind
line {
...LineFragment
}
line_objectid
state
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
vehicle_journey_objectids
vehicle_journeys {
...VehicleJourneyFragment
}
}
}
}
Variables
{"injection": InjectionInputObject}
Response
{
"data": {
"create_injection": {
"errors": ["xyz789"],
"injection": RealtimeInjection
}
}
}
create_input
Response
Returns a CreateInputPayload
Arguments
| Name | Description |
|---|---|
input - InputInputObject!
|
Example
Query
mutation create_input($input: InputInputObject!) {
create_input(input: $input) {
errors
input {
id
label
type
}
}
}
Variables
{"input": InputInputObject}
Response
{
"data": {
"create_input": {
"errors": ["abc123"],
"input": InputObject
}
}
}
create_task
Response
Returns a CreateTaskPayload
Arguments
| Name | Description |
|---|---|
task - TaskInputObject!
|
Example
Query
mutation create_task($task: TaskInputObject!) {
create_task(task: $task) {
errors
task {
duration
id
input {
...InputObjectFragment
}
run_at
state
type
}
}
}
Variables
{"task": TaskInputObject}
Response
{
"data": {
"create_task": {
"errors": ["xyz789"],
"task": TaskObject
}
}
}
create_terminus_modification
Response
Returns a CreateTerminusModificationPayload
Arguments
| Name | Description |
|---|---|
terminus_modification - TerminusModificationCreateInputObject!
|
Example
Query
mutation create_terminus_modification($terminus_modification: TerminusModificationCreateInputObject!) {
create_terminus_modification(terminus_modification: $terminus_modification) {
errors
terminus_modifications {
dates
direction
end_time
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_objectid
kind
last_impacted_vj_start_time
line {
...LineFragment
}
line_objectid
new_objectid
new_stop_point {
...StopPointFragment
}
start_time
state
terminus_modification_type
terminus_objectid
terminus_stop_point {
...StopPointFragment
}
unserved_end_stop_point_ids
unserved_end_stop_points {
...StopPointFragment
}
unserved_start_stop_point_ids
unserved_start_stop_points {
...StopPointFragment
}
vehicle_journey_objectids
vehicle_journeys {
...VehicleJourneyFragment
}
}
}
}
Variables
{
"terminus_modification": TerminusModificationCreateInputObject
}
Response
{
"data": {
"create_terminus_modification": {
"errors": ["abc123"],
"terminus_modifications": [
RealtimeTerminusModification
]
}
}
}
delete_injection
Response
Returns a DeleteInjectionPayload
Arguments
| Name | Description |
|---|---|
id - ID!
|
Example
Query
mutation delete_injection($id: ID!) {
delete_injection(id: $id) {
errors
}
}
Variables
{"id": 4}
Response
{
"data": {
"delete_injection": {
"errors": ["xyz789"]
}
}
}
delete_terminus_modification
Response
Returns a DeleteTerminusModificationPayload
Arguments
| Name | Description |
|---|---|
id - ID!
|
Example
Query
mutation delete_terminus_modification($id: ID!) {
delete_terminus_modification(id: $id) {
errors
}
}
Variables
{"id": 4}
Response
{
"data": {
"delete_terminus_modification": {
"errors": ["xyz789"]
}
}
}
update_injection
Response
Returns an UpdateInjectionPayload
Arguments
| Name | Description |
|---|---|
objectid - String!
|
|
injection - InjectionInputObject!
|
Example
Query
mutation update_injection(
$objectid: String!,
$injection: InjectionInputObject!
) {
update_injection(
objectid: $objectid,
injection: $injection
) {
errors
injection {
dates
direction
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_objectid
kind
line {
...LineFragment
}
line_objectid
state
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
vehicle_journey_objectids
vehicle_journeys {
...VehicleJourneyFragment
}
}
}
}
Variables
{
"objectid": "abc123",
"injection": InjectionInputObject
}
Response
{
"data": {
"update_injection": {
"errors": ["abc123"],
"injection": RealtimeInjection
}
}
}
update_vehicle_journey
Response
Returns an UpdateVehicleJourneyPayload
Arguments
| Name | Description |
|---|---|
vehicle_journey_objectid - String!
|
|
state - ExploitationStateEnum!
|
Example
Query
mutation update_vehicle_journey(
$vehicle_journey_objectid: String!,
$state: ExploitationStateEnum!
) {
update_vehicle_journey(
vehicle_journey_objectid: $vehicle_journey_objectid,
state: $state
) {
errors
vehicle_journey {
direction
journey_pattern {
...JourneyPatternFragment
}
objectid
state
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
}
}
}
Variables
{
"vehicle_journey_objectid": "xyz789",
"state": "ACTIVE"
}
Response
{
"data": {
"update_vehicle_journey": {
"errors": ["abc123"],
"vehicle_journey": RealtimeVehicleJourney
}
}
}
update_vehicle_journey_stop
Response
Returns an UpdateVehicleJourneyStopPayload
Arguments
| Name | Description |
|---|---|
stop - VehicleJourneyStopInputObject!
|
Example
Query
mutation update_vehicle_journey_stop($stop: VehicleJourneyStopInputObject!) {
update_vehicle_journey_stop(stop: $stop) {
errors
stop {
arrival_time
departure_time
objectid
platform_name
state
th_platform_name
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
}
}
Variables
{"stop": VehicleJourneyStopInputObject}
Response
{
"data": {
"update_vehicle_journey_stop": {
"errors": ["xyz789"],
"stop": ExploitationVehicleJourneyStopObject
}
}
}
Subscriptions
biv
Response
Returns a BIV
Example
Query
subscription biv {
biv {
bindings {
id
line_id
platform {
...BIVPlatformFragment
}
stop_point_id
way
}
external_bivs {
id
name
player_serials
provider
}
id
name
player_serials
}
}
Response
{
"data": {
"biv": {
"bindings": [BIVBinding],
"external_bivs": [ExternalBIV],
"id": 4,
"name": "abc123",
"player_serials": ["abc123"]
}
}
}
biv_destroyed
Response
Returns an ID!
Example
Query
subscription biv_destroyed {
biv_destroyed
}
Response
{"data": {"biv_destroyed": "4"}}
deviation
Response
Returns a RealtimeDeviation!
Example
Query
subscription deviation {
deviation {
dates
deviation_type
direction
end_time
entry_stop_point {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
entry_stop_point_id
exit_stop_point {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
exit_stop_point_id
id
impacted_stops {
arrival_time
departure_time
id
position
stop_point {
...StopPointFragment
}
}
journey_pattern {
direction
objectid
vehicle_journeys {
...VehicleJourneyFragment
}
}
journey_pattern_objectid
kind
last_impacted_vj_start_time
line {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
line_objectid
served_stop_point_ids
served_stop_points {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
start_time
state
unserved_stop_point_ids
unserved_stop_points {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
vehicle_journey_objectids
vehicle_journeys {
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_id
line {
...LineFragment
}
objectid
schedules
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
time_table_ids
way
}
}
}
Response
{
"data": {
"deviation": {
"dates": ["2025-01-01"],
"deviation_type": "UNKNOWN",
"direction": "FORWARD",
"end_time": "10:15:30Z",
"entry_stop_point": StopPoint,
"entry_stop_point_id": "xyz789",
"exit_stop_point": StopPoint,
"exit_stop_point_id": "xyz789",
"id": 4,
"impacted_stops": [RealtimeImpactedStop],
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "xyz789",
"kind": "TERMINUS_MODIFICATION",
"last_impacted_vj_start_time": "10:15:30Z",
"line": "NETWORK:Line:123",
"line_objectid": "xyz789",
"served_stop_point_ids": ["abc123"],
"served_stop_points": [StopPoint],
"start_time": "10:15:30Z",
"state": "ACTIVE",
"unserved_stop_point_ids": ["xyz789"],
"unserved_stop_points": [StopPoint],
"vehicle_journey_objectids": [
"xyz789"
],
"vehicle_journeys": [VehicleJourney]
}
}
}
deviation_cancelled
Response
Returns an ID!
Example
Query
subscription deviation_cancelled {
deviation_cancelled
}
Response
{"data": {"deviation_cancelled": 4}}
injection
Response
Returns a RealtimeInjection!
Example
Query
subscription injection {
injection {
dates
direction
id
journey_pattern {
direction
objectid
vehicle_journeys {
...VehicleJourneyFragment
}
}
journey_pattern_objectid
kind
line {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
line_objectid
state
stops {
arrival_time
departure_time
objectid
platform_name
state
th_platform_name
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
vehicle_journey_objectids
vehicle_journeys {
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_id
line {
...LineFragment
}
objectid
schedules
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
time_table_ids
way
}
}
}
Response
{
"data": {
"injection": {
"dates": ["2025-01-01"],
"direction": "FORWARD",
"id": "4",
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "abc123",
"kind": "TERMINUS_MODIFICATION",
"line": "NETWORK:Line:123",
"line_objectid": "xyz789",
"state": "ACTIVE",
"stops": [ExploitationVehicleJourneyStopObject],
"vehicle_journey_objectids": [
"abc123"
],
"vehicle_journeys": [VehicleJourney]
}
}
}
injection_cancelled
Response
Returns an ID!
Example
Query
subscription injection_cancelled {
injection_cancelled
}
Response
{"data": {"injection_cancelled": 4}}
line
Description
Returns the line with stop points and departures
Response
Returns a LineWithDepartures!
Example
Query
subscription line(
$line_id: String!,
$way: LineWay!
) {
line(
line_id: $line_id,
way: $way
) {
blocks {
end_stop_point_id
id
objectid
start_stop_point_id
time_table_id
vehicle_journey_ids
}
color
hlp_routes {
journey_pattern_id
stop_points
}
id
name
network_id
number
objectid
published_name
stop_areas {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_points {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
stop_points_departures {
departures {
...DepartureFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
stops {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithDeparturesFragment
}
tts_name
}
thermometer_stop_areas {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
time_tables {
days
id
objectid
}
transport_type
tts_name
type
vehicle_journeys {
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_id
line {
...LineFragment
}
objectid
schedules
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
time_table_ids
way
}
way
}
}
Variables
{"line_id": "xyz789", "way": "FORWARD"}
Response
{
"data": {
"line": {
"blocks": [Block],
"color": "abc123",
"hlp_routes": [HlpRoute],
"id": "abc123",
"name": "xyz789",
"network_id": "xyz789",
"number": 123,
"objectid": "abc123",
"published_name": "xyz789",
"stop_areas": [StopArea],
"stop_points": [StopPoint],
"stop_points_departures": [StopPointWithDepartures],
"stops": [StopAreaWithDepartures],
"thermometer_stop_areas": [StopArea],
"time_tables": [TimeTable],
"transport_type": "xyz789",
"tts_name": "abc123",
"type": "xyz789",
"vehicle_journeys": [VehicleJourney],
"way": "FORWARD"
}
}
}
network
Response
Returns a Network
Example
Query
subscription network {
network {
bivs {
bindings {
...BIVBindingFragment
}
external_bivs {
...ExternalBIVFragment
}
id
name
player_serials
}
end_at
lines {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
lines_meta
name
objectid
situation {
cause
consequences {
...SituationConsequenceFragment
}
creation_time
id
participant_ref
planned
priority
publication_window_end_time
publication_window_start_time
publication_windows {
...SituationTimePeriodFragment
}
publishing_actions {
...SituationPublishingActionFragment
}
reason_name {
...SituationLocalizedTextFragment
}
scope_type
situation_number
summary {
...SituationLocalizedTextFragment
}
targets {
...SituationTargetFragment
}
validity_end_time
validity_periods {
...SituationTimePeriodFragment
}
validity_start_time
version
}
situations {
cause
consequences {
...SituationConsequenceFragment
}
creation_time
id
participant_ref
planned
priority
publication_window_end_time
publication_window_start_time
publication_windows {
...SituationTimePeriodFragment
}
publishing_actions {
...SituationPublishingActionFragment
}
reason_name {
...SituationLocalizedTextFragment
}
scope_type
situation_number
summary {
...SituationLocalizedTextFragment
}
targets {
...SituationTargetFragment
}
validity_end_time
validity_periods {
...SituationTimePeriodFragment
}
validity_start_time
version
}
stop_area {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_areas {
connection_departures
didok
id
name
objectid
registration_number
stop_points {
...StopPointWithConnectionsFragment
}
tts_name
}
stop_point {
connecting_lines {
...StopPointConnectingLineFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
stop_points {
connecting_lines {
...StopPointConnectingLineFragment
}
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
vehicles {
current_stop {
...ExploitationVehicleJourneyStopObjectFragment
}
current_stop_state
gps {
...LocationObjectFragment
}
id
kind
master
number
odometer_km
player_serials
stop_requested
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
version
}
}
Response
{
"data": {
"network": {
"bivs": [BIV],
"end_at": "2025-01-01",
"lines": ["NETWORK:Line:123"],
"lines_meta": {},
"name": "xyz789",
"objectid": "abc123",
"situation": Situation,
"situations": [Situation],
"stop_area": StopArea,
"stop_areas": [StopArea],
"stop_point": StopPointWithConnections,
"stop_points": [StopPointWithConnections],
"vehicles": [Vehicle],
"version": "abc123"
}
}
}
terminus_modification
Response
Returns a RealtimeTerminusModification!
Example
Query
subscription terminus_modification {
terminus_modification {
dates
direction
end_time
id
journey_pattern {
direction
objectid
vehicle_journeys {
...VehicleJourneyFragment
}
}
journey_pattern_objectid
kind
last_impacted_vj_start_time
line {
blocks {
...BlockFragment
}
color
hlp_routes {
...HlpRouteFragment
}
id
name
network_id
number
objectid
published_name
stop_areas {
...StopAreaFragment
}
stop_points {
...StopPointFragment
}
thermometer_stop_areas {
...StopAreaFragment
}
time_tables {
...TimeTableFragment
}
transport_type
tts_name
type
vehicle_journeys {
...VehicleJourneyFragment
}
}
line_objectid
new_objectid
new_stop_point {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
start_time
state
terminus_modification_type
terminus_objectid
terminus_stop_point {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
unserved_end_stop_point_ids
unserved_end_stop_points {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
unserved_start_stop_point_ids
unserved_start_stop_points {
didok
id
latitude
longitude
mobility_restricted_suitability
name
objectid
platform
platform_tts
short_name
stop_area_id
stop_areas {
...StopAreaFragment
}
ticket_machine
}
vehicle_journey_objectids
vehicle_journeys {
id
journey_pattern {
...JourneyPatternFragment
}
journey_pattern_id
line {
...LineFragment
}
objectid
schedules
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
time_table_ids
way
}
}
}
Response
{
"data": {
"terminus_modification": {
"dates": ["2025-01-01"],
"direction": "FORWARD",
"end_time": "10:15:30Z",
"id": "4",
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "xyz789",
"kind": "TERMINUS_MODIFICATION",
"last_impacted_vj_start_time": "10:15:30Z",
"line": "NETWORK:Line:123",
"line_objectid": "xyz789",
"new_objectid": "xyz789",
"new_stop_point": StopPoint,
"start_time": "10:15:30Z",
"state": "ACTIVE",
"terminus_modification_type": "UNKNOWN",
"terminus_objectid": "abc123",
"terminus_stop_point": StopPoint,
"unserved_end_stop_point_ids": [
"xyz789"
],
"unserved_end_stop_points": [StopPoint],
"unserved_start_stop_point_ids": [
"xyz789"
],
"unserved_start_stop_points": [StopPoint],
"vehicle_journey_objectids": [
"xyz789"
],
"vehicle_journeys": [VehicleJourney]
}
}
}
terminus_modification_cancelled
Response
Returns an ID!
Example
Query
subscription terminus_modification_cancelled {
terminus_modification_cancelled
}
Response
{"data": {"terminus_modification_cancelled": 4}}
vehicle
Response
Returns a Vehicle
Example
Query
subscription vehicle {
vehicle {
current_stop {
arrival_time
departure_time
objectid
platform_name
state
th_platform_name
vehicle_journey {
...RealtimeVehicleJourneyFragment
}
}
current_stop_state
gps {
accuracy
latitude
longitude
timestamp
}
id
kind
master
number
odometer_km
player_serials
stop_requested
vehicle_journey {
direction
journey_pattern {
...JourneyPatternFragment
}
objectid
state
stops {
...ExploitationVehicleJourneyStopObjectFragment
}
}
}
}
Response
{
"data": {
"vehicle": {
"current_stop": ExploitationVehicleJourneyStopObject,
"current_stop_state": "AT_STOP",
"gps": LocationObject,
"id": 4,
"kind": "BUS",
"master": false,
"number": "xyz789",
"odometer_km": 123,
"player_serials": ["abc123"],
"stop_requested": true,
"vehicle_journey": RealtimeVehicleJourney
}
}
}
vehicle_destroyed
Response
Returns an ID!
Example
Query
subscription vehicle_destroyed {
vehicle_destroyed
}
Response
{"data": {"vehicle_destroyed": "4"}}
vehicle_journey_activated
Response
Returns an ID!
Example
Query
subscription vehicle_journey_activated {
vehicle_journey_activated
}
Response
{"data": {"vehicle_journey_activated": "4"}}
vehicle_journey_cancelled
Response
Returns an ID!
Example
Query
subscription vehicle_journey_cancelled {
vehicle_journey_cancelled
}
Response
{"data": {"vehicle_journey_cancelled": "4"}}
Types
BIV
Fields
| Field Name | Description |
|---|---|
bindings - [BIVBinding!]!
|
|
external_bivs - [ExternalBIV!]!
|
|
id - ID!
|
|
name - String!
|
|
player_serials - [String!]!
|
Example
{
"bindings": [BIVBinding],
"external_bivs": [ExternalBIV],
"id": 4,
"name": "abc123",
"player_serials": ["xyz789"]
}
BIVAnnouncementBlock
Fields
| Field Name | Description |
|---|---|
text - String!
|
Example
{"text": "xyz789"}
BIVAnnouncementContent
Fields
| Field Name | Description |
|---|---|
announcements - [BIVAnnouncementBlock!]!
|
|
enabled - Boolean!
|
|
gravity - BIVAnnouncementGravity!
|
|
mode - BIVAnnouncementMode!
|
|
periodicity - Int
|
Example
{
"announcements": [BIVAnnouncementBlock],
"enabled": false,
"gravity": "MAJOR",
"mode": "FREQUENCY",
"periodicity": 123
}
BIVAnnouncementGravity
Values
| Enum Value | Description |
|---|---|
|
|
Gravity Major |
|
|
Gravity Minor |
Example
"MAJOR"
BIVAnnouncementMode
Values
| Enum Value | Description |
|---|---|
|
|
Mode frequency |
|
|
Mode departure |
|
|
Mode fixed interval |
Example
"FREQUENCY"
BIVBinding
Fields
| Field Name | Description |
|---|---|
id - ID!
|
|
line_id - String
|
|
platform - BIVPlatform
|
|
stop_point_id - String!
|
|
way - LineWay
|
Example
{
"id": "4",
"line_id": "xyz789",
"platform": BIVPlatform,
"stop_point_id": "abc123",
"way": "FORWARD"
}
BIVDisruptionGravity
Values
| Enum Value | Description |
|---|---|
|
|
Gravity Major |
|
|
Gravity Minor |
Example
"MAJOR"
BIVEpaperContent
BIVMessageContent
Example
{
"description": "xyz789",
"enabled": true,
"end_date": "2025-01-01",
"end_time": "10:15:30Z",
"full_screen": true,
"gravity": "MAJOR",
"title": "abc123"
}
BIVPlatform
Block
Example
{
"end_stop_point_id": "abc123",
"id": "xyz789",
"objectid": "xyz789",
"start_stop_point_id": "xyz789",
"time_table_id": "xyz789",
"vehicle_journey_ids": "xyz789"
}
Boolean
Description
Represents true or false values.
Example
true
Content
Description
Base Message Content Interface
Fields
| Field Name | Description |
|---|---|
enabled - Boolean!
|
Possible Types
| Content Types |
|---|
Example
{"enabled": false}
Coordinate
CreateDirectUploadPayload
Description
Autogenerated return type of CreateDirectUpload.
Fields
| Field Name | Description |
|---|---|
direct_upload - DirectUploadObject
|
|
errors - [String!]!
|
Example
{
"direct_upload": DirectUploadObject,
"errors": ["abc123"]
}
CreateInjectionPayload
Description
Autogenerated return type of CreateInjection.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
|
injection - RealtimeInjection
|
Example
{
"errors": ["xyz789"],
"injection": RealtimeInjection
}
CreateInputPayload
Description
Autogenerated return type of CreateInput.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
|
input - InputObject
|
Example
{
"errors": ["abc123"],
"input": InputObject
}
CreateTaskPayload
Description
Autogenerated return type of CreateTask.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
|
task - TaskObject
|
Example
{
"errors": ["abc123"],
"task": TaskObject
}
CreateTerminusModificationPayload
Description
Autogenerated return type of CreateTerminusModification.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
|
terminus_modifications - [RealtimeTerminusModification!]
|
Example
{
"errors": ["abc123"],
"terminus_modifications": [RealtimeTerminusModification]
}
Date
Description
ISO-8601 formatted Date
Example
"2025-01-01"
DeleteInjectionPayload
Description
Autogenerated return type of DeleteInjection.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
Example
{"errors": ["xyz789"]}
DeleteTerminusModificationPayload
Description
Autogenerated return type of DeleteTerminusModification.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
Example
{"errors": ["xyz789"]}
Departure
Example
{
"additional": false,
"arrival_status": "ON_TIME",
"cancelled": true,
"departure_status": "ON_TIME",
"destination": "xyz789",
"origin": "xyz789",
"platform": "xyz789",
"rt": "10:15:30Z",
"th": "10:15:30Z",
"th_destination": "xyz789",
"th_platform": "xyz789"
}
DirectUploadInputObject
DirectUploadObject
Description
This object describes the settings to use when uploading a file through the API.
You need to send a multipart POST request (see the method field) to the url.The form should contain all fields from form_data and a file field that includes the file to be uploaded.A typical request using curl would look something like this:
curl --request POST \
--url <<url>> \
--header 'Content-Type: multipart/form-data' \
--form AWSAccessKeyID=<<AWSAccessKeyID>> \
--form x-amz-server-side-encryption=AES256 \
--form 'key=<<key>>' \
--form success_action_status=201 \
--form acl=<<acl>> \
--form policy=<<policy>> \
--form 'signature=<<signature>>' \
--form content-type=application/x10 \
--form 'content-disposition=inline; filename="JOURNEY.x10"' \
--form file=@/path/to/file
Example
{
"form_data": {},
"id": 4,
"method": "abc123",
"url": "abc123"
}
DisruptionInterface
Description
Base Disruption Interface
Fields
| Field Name | Description |
|---|---|
dates - [Date!]!
|
Dates |
direction - LineWay!
|
Direction of Line |
id - ID!
|
ID |
journey_pattern - JourneyPattern!
|
Journey Pattern |
journey_pattern_objectid - String!
|
ObjectID of Journey Pattern |
kind - DisruptionKindEnum!
|
Disruption Kind |
line - Line!
|
Line |
line_objectid - String!
|
ObjectID of Line |
state - ExploitationStateEnum!
|
|
vehicle_journey_objectids - [String!]!
|
ObjectIDs of Vehicle Journeys |
vehicle_journeys - [VehicleJourney!]!
|
Vehicle Journeys |
Possible Types
| DisruptionInterface Types |
|---|
Example
{
"dates": ["2025-01-01"],
"direction": "FORWARD",
"id": 4,
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "abc123",
"kind": "TERMINUS_MODIFICATION",
"line": "NETWORK:Line:123",
"line_objectid": "abc123",
"state": "ACTIVE",
"vehicle_journey_objectids": ["xyz789"],
"vehicle_journeys": [VehicleJourney]
}
DisruptionKindEnum
Values
| Enum Value | Description |
|---|---|
|
|
Terminus Modification |
|
|
Injection |
|
|
Deviation |
Example
"TERMINUS_MODIFICATION"
ExploitationStateEnum
Values
| Enum Value | Description |
|---|---|
|
|
Active |
|
|
Inactive |
Example
"ACTIVE"
ExploitationVehicleJourneyStopObject
Fields
| Field Name | Description |
|---|---|
arrival_time - TimeShort
|
Arrival Time |
departure_time - TimeShort
|
Departure Time |
objectid - String!
|
Boarding Stop Area Objectid |
platform_name - String
|
Platform Name |
state - ExploitationStateEnum!
|
Stop State |
th_platform_name - String
|
Theoretical Platform Name |
vehicle_journey - RealtimeVehicleJourney!
|
Vehicle Journey |
Example
{
"arrival_time": TimeShort,
"departure_time": TimeShort,
"objectid": "xyz789",
"platform_name": "abc123",
"state": "ACTIVE",
"th_platform_name": "xyz789",
"vehicle_journey": RealtimeVehicleJourney
}
ExploitationVehicleStopStateEnum
Values
| Enum Value | Description |
|---|---|
|
|
At Stop |
|
|
Exited Stop |
Example
"AT_STOP"
ExportObject
ExportType
Values
| Enum Value | Description |
|---|---|
|
|
Theorical Dump |
|
|
RIV Export |
|
|
Driver Dump |
|
|
Headsign Dump |
Example
"THEORICAL"
ExternalBIV
Fields
| Field Name | Description |
|---|---|
id - ID!
|
|
name - String!
|
|
player_serials - [String!]!
|
|
provider - ExternalBIVProvider!
|
Example
{
"id": "4",
"name": "abc123",
"player_serials": ["xyz789"],
"provider": "AXENTIA"
}
ExternalBIVProvider
Values
| Enum Value | Description |
|---|---|
|
|
Axentia |
Example
"AXENTIA"
Float
Description
Represents signed double-precision fractional values as specified by IEEE 754.
Example
987.65
HlpRoute
ID
Description
Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "VXNlci0xMA==") or integer (such as 4) input value will be accepted as an ID.
Example
"4"
InjectionInputObject
Fields
| Input Field | Description |
|---|---|
line_objectid - String!
|
Line objectid |
direction - LineWay!
|
Line direction |
journey_pattern_objectid - String!
|
Journey Pattern objectid |
date_start - Date!
|
Start Date for Injection |
date_end - Date!
|
End Date for Injection |
stops - [InjectionStopInputObject!]!
|
Stops served by the injection |
Example
{
"line_objectid": "xyz789",
"direction": "FORWARD",
"journey_pattern_objectid": "xyz789",
"date_start": "2025-01-01",
"date_end": "2025-01-01",
"stops": [InjectionStopInputObject]
}
InjectionStopInputObject
InputInputObject
Fields
| Input Field | Description |
|---|---|
file_ids - [ID!]!
|
Array of file ids uploaded through Direct Upload |
type - InputType!
|
Type of the input |
label - String!
|
Label for the input |
Example
{
"file_ids": ["4"],
"type": "VDV",
"label": "abc123"
}
InputObject
Fields
| Field Name | Description |
|---|---|
id - ID!
|
|
label - String!
|
|
type - InputType!
|
Example
{"id": 4, "label": "abc123", "type": "VDV"}
InputType
Values
| Enum Value | Description |
|---|---|
|
|
VDV |
Example
"VDV"
Int
Description
Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Example
987
JSON
Example
{}
JourneyPattern
Fields
| Field Name | Description |
|---|---|
direction - LineWay!
|
|
objectid - String!
|
|
vehicle_journeys - VehicleJourney!
|
Example
{
"direction": "FORWARD",
"objectid": "NETWORK:JourneyPattern:123",
"vehicle_journeys": VehicleJourney
}
Line
Fields
| Field Name | Description |
|---|---|
blocks - [Block!]
|
|
color - String!
|
|
hlp_routes - [HlpRoute!]
|
|
id - String!
|
|
name - String!
|
|
network_id - String!
|
|
number - Int
|
|
objectid - String!
|
|
published_name - String
|
|
Arguments
|
|
stop_areas - [StopArea!]!
|
|
stop_points - [StopPoint!]!
|
|
thermometer_stop_areas - [StopArea!]!
|
|
time_tables - [TimeTable!]!
|
|
transport_type - String!
|
|
tts_name - String
|
|
type - String!
|
|
vehicle_journeys - [VehicleJourney!]!
|
|
Example
NETWORK:Line:123
LinePublishedNameType
Values
| Enum Value | Description |
|---|---|
|
|
Name if available, published name otherwise |
|
|
Published name only |
Example
"NAME_OR_PUBLISHED_NAME"
LineWay
Values
| Enum Value | Description |
|---|---|
|
|
Line in forward direction |
|
|
Line in backward direction |
Example
"FORWARD"
LineWithDepartures
Fields
| Field Name | Description |
|---|---|
blocks - [Block!]
|
|
color - String!
|
|
hlp_routes - [HlpRoute!]
|
|
id - String!
|
|
name - String!
|
|
network_id - String!
|
|
number - Int
|
|
objectid - String!
|
|
published_name - String
|
|
Arguments
|
|
stop_areas - [StopArea!]!
|
|
stop_points - [StopPoint!]!
|
|
stop_points_departures - [StopPointWithDepartures!]!
|
|
stops - [StopAreaWithDepartures!]!
|
|
thermometer_stop_areas - [StopArea!]!
|
|
time_tables - [TimeTable!]!
|
|
transport_type - String!
|
|
tts_name - String
|
|
type - String!
|
|
vehicle_journeys - [VehicleJourney!]!
|
|
way - LineWay!
|
|
Example
{
"blocks": [Block],
"color": "xyz789",
"hlp_routes": [HlpRoute],
"id": "abc123",
"name": "abc123",
"network_id": "abc123",
"number": 987,
"objectid": "xyz789",
"published_name": "xyz789",
"stop_areas": [StopArea],
"stop_points": [StopPoint],
"stop_points_departures": [StopPointWithDepartures],
"stops": [StopAreaWithDepartures],
"thermometer_stop_areas": [StopArea],
"time_tables": [TimeTable],
"transport_type": "abc123",
"tts_name": "xyz789",
"type": "xyz789",
"vehicle_journeys": [VehicleJourney],
"way": "FORWARD"
}
LinesTarget
Fields
| Field Name | Description |
|---|---|
from_stop - String!
|
|
lines - [LinesTargetLine!]!
|
|
to_stop - String
|
Example
{
"from_stop": "abc123",
"lines": [LinesTargetLine],
"to_stop": "xyz789"
}
LinesTargetLine
Fields
| Field Name | Description |
|---|---|
id - String!
|
|
name - String!
|
|
ways - [LineWay!]!
|
Example
{
"id": "xyz789",
"name": "abc123",
"ways": ["FORWARD"]
}
LocationObject
LocationTarget
Fields
| Field Name | Description |
|---|---|
regions - [LocationTargetRegion!]!
|
Example
{"regions": [LocationTargetCircle]}
LocationTargetCircle
Fields
| Field Name | Description |
|---|---|
center - Coordinate!
|
|
radius - Int!
|
Example
{"center": Coordinate, "radius": 987}
LocationTargetPolygon
Fields
| Field Name | Description |
|---|---|
paths - [Coordinate!]!
|
Example
{"paths": [Coordinate]}
LocationTargetRegion
Types
| Union Types |
|---|
Example
LocationTargetCircle
Message
MessageType
Values
| Enum Value | Description |
|---|---|
|
|
Web site contents |
|
|
BIV Message contents |
|
|
BIV Announcement Message contents |
|
|
BIV Epaper contents |
Example
"WEB_SITE"
Network
Fields
| Field Name | Description |
|---|---|
bivs - [BIV!]
|
Returns a list of BIVs |
end_at - Date
|
|
lines - [Line!]!
|
|
lines_meta - JSON!
|
|
name - String!
|
|
objectid - String!
|
|
situation - Situation
|
|
situations - [Situation!]!
|
|
stop_area - StopArea
|
|
Arguments
|
|
stop_areas - [StopArea!]!
|
|
Arguments
|
|
stop_point - StopPointWithConnections
|
|
Arguments
|
|
stop_points - [StopPointWithConnections!]!
|
|
Arguments
|
|
vehicles - [Vehicle!]
|
|
version - String
|
|
Example
{
"bivs": [BIV],
"end_at": "2025-01-01",
"lines": ["NETWORK:Line:123"],
"lines_meta": {},
"name": "abc123",
"objectid": "abc123",
"situation": Situation,
"situations": [Situation],
"stop_area": StopArea,
"stop_areas": [StopArea],
"stop_point": StopPointWithConnections,
"stop_points": [StopPointWithConnections],
"vehicles": [Vehicle],
"version": "xyz789"
}
NetworkTarget
Fields
| Field Name | Description |
|---|---|
type - String!
|
Example
{"type": "xyz789"}
Planning
Example
{
"continuous": true,
"end_date": "2025-01-01",
"end_time": "xyz789",
"friday": true,
"monday": true,
"saturday": true,
"start_date": "2025-01-01",
"start_time": "xyz789",
"sunday": true,
"thursday": false,
"tuesday": false,
"wednesday": false
}
PlayersTarget
Fields
| Field Name | Description |
|---|---|
external_bivs - [ExternalBIV!]!
|
|
player_names - [String!]!
|
Example
{
"external_bivs": [ExternalBIV],
"player_names": ["abc123"]
}
RealtimeDeviation
Fields
| Field Name | Description |
|---|---|
dates - [Date!]!
|
Dates |
deviation_type - RealtimeDeviationTypeEnum!
|
|
direction - LineWay!
|
Direction of Line |
end_time - Time!
|
|
entry_stop_point - StopPoint
|
|
entry_stop_point_id - String
|
|
exit_stop_point - StopPoint
|
|
exit_stop_point_id - String
|
|
id - ID!
|
ID |
impacted_stops - [RealtimeImpactedStop!]!
|
|
journey_pattern - JourneyPattern!
|
Journey Pattern |
journey_pattern_objectid - String!
|
ObjectID of Journey Pattern |
kind - DisruptionKindEnum!
|
Disruption Kind |
last_impacted_vj_start_time - Time
|
|
line - Line!
|
Line |
line_objectid - String!
|
ObjectID of Line |
served_stop_point_ids - [String!]
|
|
served_stop_points - [StopPoint!]
|
|
start_time - Time!
|
|
state - ExploitationStateEnum!
|
|
unserved_stop_point_ids - [String!]
|
|
unserved_stop_points - [StopPoint!]
|
|
vehicle_journey_objectids - [String!]!
|
ObjectIDs of Vehicle Journeys |
vehicle_journeys - [VehicleJourney!]!
|
Vehicle Journeys |
Example
{
"dates": ["2025-01-01"],
"deviation_type": "UNKNOWN",
"direction": "FORWARD",
"end_time": "10:15:30Z",
"entry_stop_point": StopPoint,
"entry_stop_point_id": "xyz789",
"exit_stop_point": StopPoint,
"exit_stop_point_id": "abc123",
"id": "4",
"impacted_stops": [RealtimeImpactedStop],
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "abc123",
"kind": "TERMINUS_MODIFICATION",
"last_impacted_vj_start_time": "10:15:30Z",
"line": "NETWORK:Line:123",
"line_objectid": "abc123",
"served_stop_point_ids": ["abc123"],
"served_stop_points": [StopPoint],
"start_time": "10:15:30Z",
"state": "ACTIVE",
"unserved_stop_point_ids": ["abc123"],
"unserved_stop_points": [StopPoint],
"vehicle_journey_objectids": ["xyz789"],
"vehicle_journeys": [VehicleJourney]
}
RealtimeDeviationTypeEnum
Values
| Enum Value | Description |
|---|---|
|
|
Unknown |
|
|
Back online |
|
|
Back online with moved stops |
|
|
Moved destination terminus |
|
|
Moved origin terminus |
|
|
Updated destination terminus |
|
|
Updated origin terminus |
Example
"UNKNOWN"
RealtimeImpactedStop
Fields
| Field Name | Description |
|---|---|
arrival_time - Time
|
|
departure_time - Time
|
|
id - String!
|
|
position - Int
|
|
stop_point - StopPoint!
|
Example
{
"arrival_time": "10:15:30Z",
"departure_time": "10:15:30Z",
"id": "abc123",
"position": 987,
"stop_point": StopPoint
}
RealtimeInjection
Fields
| Field Name | Description |
|---|---|
dates - [Date!]!
|
Dates |
direction - LineWay!
|
Direction of Line |
id - ID!
|
ID |
journey_pattern - JourneyPattern!
|
Journey Pattern |
journey_pattern_objectid - String!
|
ObjectID of Journey Pattern |
kind - DisruptionKindEnum!
|
Disruption Kind |
line - Line!
|
Line |
line_objectid - String!
|
ObjectID of Line |
state - ExploitationStateEnum!
|
|
stops - [ExploitationVehicleJourneyStopObject!]!
|
|
vehicle_journey_objectids - [String!]!
|
ObjectIDs of Vehicle Journeys |
vehicle_journeys - [VehicleJourney!]!
|
Vehicle Journeys |
Example
{
"dates": ["2025-01-01"],
"direction": "FORWARD",
"id": 4,
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "xyz789",
"kind": "TERMINUS_MODIFICATION",
"line": "NETWORK:Line:123",
"line_objectid": "xyz789",
"state": "ACTIVE",
"stops": [ExploitationVehicleJourneyStopObject],
"vehicle_journey_objectids": ["abc123"],
"vehicle_journeys": [VehicleJourney]
}
RealtimeStopStatusEnum
Description
Status of a stop
Values
| Enum Value | Description |
|---|---|
|
|
On Time |
|
|
Early |
|
|
Delayed |
|
|
Cancelled |
|
|
Arrived |
|
|
No Report |
|
|
Departed |
Example
"ON_TIME"
RealtimeTerminusModification
Fields
| Field Name | Description |
|---|---|
dates - [Date!]!
|
Dates |
direction - LineWay!
|
Direction of Line |
end_time - Time!
|
|
id - ID!
|
ID |
journey_pattern - JourneyPattern!
|
Journey Pattern |
journey_pattern_objectid - String!
|
ObjectID of Journey Pattern |
kind - DisruptionKindEnum!
|
Disruption Kind |
last_impacted_vj_start_time - Time
|
|
line - Line!
|
Line |
line_objectid - String!
|
ObjectID of Line |
new_objectid - String!
|
|
new_stop_point - StopPoint!
|
|
start_time - Time!
|
|
state - ExploitationStateEnum!
|
|
terminus_modification_type - RealtimeTerminusModificationTypeEnum!
|
|
terminus_objectid - String!
|
|
terminus_stop_point - StopPoint!
|
|
unserved_end_stop_point_ids - [String!]!
|
|
unserved_end_stop_points - [StopPoint!]!
|
|
unserved_start_stop_point_ids - [String!]!
|
|
unserved_start_stop_points - [StopPoint!]!
|
|
vehicle_journey_objectids - [String!]!
|
ObjectIDs of Vehicle Journeys |
vehicle_journeys - [VehicleJourney!]!
|
Vehicle Journeys |
Example
{
"dates": ["2025-01-01"],
"direction": "FORWARD",
"end_time": "10:15:30Z",
"id": "4",
"journey_pattern": JourneyPattern,
"journey_pattern_objectid": "xyz789",
"kind": "TERMINUS_MODIFICATION",
"last_impacted_vj_start_time": "10:15:30Z",
"line": "NETWORK:Line:123",
"line_objectid": "abc123",
"new_objectid": "xyz789",
"new_stop_point": StopPoint,
"start_time": "10:15:30Z",
"state": "ACTIVE",
"terminus_modification_type": "UNKNOWN",
"terminus_objectid": "abc123",
"terminus_stop_point": StopPoint,
"unserved_end_stop_point_ids": ["abc123"],
"unserved_end_stop_points": [StopPoint],
"unserved_start_stop_point_ids": [
"xyz789"
],
"unserved_start_stop_points": [StopPoint],
"vehicle_journey_objectids": ["abc123"],
"vehicle_journeys": [VehicleJourney]
}
RealtimeTerminusModificationTypeEnum
Values
| Enum Value | Description |
|---|---|
|
|
Unknown |
|
|
Shortened vehicle journey by end |
|
|
Shortened vehicle journey by start |
|
|
Changed vehicle journey |
Example
"UNKNOWN"
RealtimeVehicleJourney
Fields
| Field Name | Description |
|---|---|
direction - LineWay!
|
|
journey_pattern - JourneyPattern!
|
|
objectid - String!
|
|
state - ExploitationStateEnum!
|
|
stops - [ExploitationVehicleJourneyStopObject!]!
|
Example
{
"direction": "FORWARD",
"journey_pattern": JourneyPattern,
"objectid": "xyz789",
"state": "ACTIVE",
"stops": [ExploitationVehicleJourneyStopObject]
}
SGComplexContent
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Example
{"id": "4"}
SGContent
Description
Base Message SG Content Interface
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Possible Types
| SGContent Types |
|---|
Example
{"id": 4}
SGMediaContent
Fields
| Field Name | Description |
|---|---|
id - ID!
|
|
type - SGMediaTypeEnum!
|
|
value - String
|
Media URL |
Example
{
"id": "4",
"type": "IMAGE",
"value": "xyz789"
}
SGMediaTypeEnum
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
Example
"IMAGE"
Situation
Fields
| Field Name | Description |
|---|---|
cause - String
|
|
consequences - [SituationConsequence!]
|
|
creation_time - Time!
|
|
id - ID!
|
|
participant_ref - String!
|
|
planned - Boolean
|
|
priority - Int
|
|
publication_window_end_time - Time
|
|
publication_window_start_time - Time
|
|
publication_windows - [SituationTimePeriod!]
|
|
publishing_actions - [SituationPublishingAction!]
|
|
reason_name - SituationLocalizedText
|
|
scope_type - String!
|
|
situation_number - String!
|
|
summary - SituationLocalizedText
|
|
targets - [SituationTarget!]
|
|
validity_end_time - Time
|
|
validity_periods - [SituationTimePeriod!]
|
|
validity_start_time - Time
|
|
version - String!
|
Example
{
"cause": "xyz789",
"consequences": [SituationConsequence],
"creation_time": "10:15:30Z",
"id": "4",
"participant_ref": "xyz789",
"planned": false,
"priority": 987,
"publication_window_end_time": "10:15:30Z",
"publication_window_start_time": "10:15:30Z",
"publication_windows": [SituationTimePeriod],
"publishing_actions": [SituationPublishingAction],
"reason_name": SituationLocalizedText,
"scope_type": "abc123",
"situation_number": "abc123",
"summary": SituationLocalizedText,
"targets": [SituationTarget],
"validity_end_time": "10:15:30Z",
"validity_periods": [SituationTimePeriod],
"validity_start_time": "10:15:30Z",
"version": "xyz789"
}
SituationConsequence
Fields
| Field Name | Description |
|---|---|
condition - String!
|
|
id - ID!
|
|
targets - [SituationTarget!]
|
Example
{
"condition": "xyz789",
"id": 4,
"targets": [SituationTarget]
}
SituationLocalizedText
SituationPassengerInformationAction
Fields
| Field Name | Description |
|---|---|
action_ref - String!
|
|
id - ID!
|
|
recorded_at_time - Time!
|
|
textual_contents - [SituationTextualContent!]
|
|
Arguments |
|
Example
{
"action_ref": "abc123",
"id": 4,
"recorded_at_time": "10:15:30Z",
"textual_contents": [SituationTextualContent]
}
SituationPublishingAction
Fields
| Field Name | Description |
|---|---|
id - ID!
|
|
passenger_information_actions - [SituationPassengerInformationAction!]
|
|
targets - [SituationTarget!]
|
Example
{
"id": "4",
"passenger_information_actions": [
SituationPassengerInformationAction
],
"targets": [SituationTarget]
}
SituationTarget
Example
{
"destination_name": "xyz789",
"destination_objectid": "abc123",
"direction": "abc123",
"kind": "xyz789",
"line_objectid": "abc123",
"line_ref": "xyz789",
"line_stop_area_objectids": ["abc123"],
"stop_area_name": "abc123",
"stop_area_objectid": "xyz789"
}
SituationTextualContent
Fields
| Field Name | Description |
|---|---|
consequence - SituationLocalizedText
|
|
description - SituationLocalizedText
|
|
duration - SituationLocalizedText
|
|
reason - SituationLocalizedText
|
|
recommendation - SituationLocalizedText
|
|
remark - SituationLocalizedText
|
|
size - SituationTextualContentSizeEnum!
|
|
summary - SituationLocalizedText
|
Example
{
"consequence": SituationLocalizedText,
"description": SituationLocalizedText,
"duration": SituationLocalizedText,
"reason": SituationLocalizedText,
"recommendation": SituationLocalizedText,
"remark": SituationLocalizedText,
"size": "SMALL",
"summary": SituationLocalizedText
}
SituationTextualContentSizeEnum
Values
| Enum Value | Description |
|---|---|
|
|
Small |
|
|
Medium |
|
|
Large |
Example
"SMALL"
SituationTimePeriod
StopArea
Example
{
"connection_departures": true,
"didok": "xyz789",
"id": "abc123",
"name": "abc123",
"objectid": "abc123",
"registration_number": "xyz789",
"stop_points": [StopPointWithConnections],
"tts_name": "abc123"
}
StopAreaDeparture
Fields
| Field Name | Description |
|---|---|
aimed_arrival_time - Time
|
|
aimed_departure_time - Time
|
|
arrival_status - RealtimeStopStatusEnum
|
|
cancelled_at - Time
|
|
color - String
|
|
connection - Boolean
|
|
departure_status - RealtimeStopStatusEnum!
|
|
destination - String
|
|
expected_arrival_time - Time
|
|
expected_departure_time - Time
|
|
external - Boolean
|
|
kind - String!
|
|
line_id - String!
|
|
moved - Boolean
|
|
network - String!
|
|
number - String!
|
|
order - Int
|
|
origin - String
|
|
platform - String
|
|
stop_area_id - String!
|
|
stop_point_id - String!
|
|
th_destination - String
|
|
th_platform - String
|
|
vehicle_journey_id - String
|
|
way - String!
|
Example
{
"aimed_arrival_time": "10:15:30Z",
"aimed_departure_time": "10:15:30Z",
"arrival_status": "ON_TIME",
"cancelled_at": "10:15:30Z",
"color": "xyz789",
"connection": false,
"departure_status": "ON_TIME",
"destination": "abc123",
"expected_arrival_time": "10:15:30Z",
"expected_departure_time": "10:15:30Z",
"external": true,
"kind": "abc123",
"line_id": "xyz789",
"moved": false,
"network": "xyz789",
"number": "abc123",
"order": 987,
"origin": "abc123",
"platform": "xyz789",
"stop_area_id": "xyz789",
"stop_point_id": "abc123",
"th_destination": "abc123",
"th_platform": "xyz789",
"vehicle_journey_id": "xyz789",
"way": "xyz789"
}
StopAreaWithDepartures
Example
{
"connection_departures": true,
"didok": "abc123",
"id": "xyz789",
"name": "abc123",
"objectid": "abc123",
"registration_number": "xyz789",
"stop_points": [StopPointWithDepartures],
"tts_name": "abc123"
}
StopPoint
Fields
| Field Name | Description |
|---|---|
didok - String
|
|
id - String!
|
|
latitude - String
|
|
longitude - String
|
|
mobility_restricted_suitability - Boolean
|
|
name - String!
|
|
objectid - String!
|
|
platform - String
|
|
platform_tts - String
|
|
short_name - String!
|
|
stop_area_id - String
|
|
stop_areas - [StopArea!]!
|
|
ticket_machine - Boolean
|
Example
{
"didok": "xyz789",
"id": "abc123",
"latitude": "xyz789",
"longitude": "abc123",
"mobility_restricted_suitability": true,
"name": "xyz789",
"objectid": "abc123",
"platform": "xyz789",
"platform_tts": "abc123",
"short_name": "xyz789",
"stop_area_id": "xyz789",
"stop_areas": [StopArea],
"ticket_machine": true
}
StopPointConnectingLine
Fields
| Field Name | Description |
|---|---|
blocks - [Block!]
|
|
color - String!
|
|
colour - String
|
|
departures - [Departure!]!
|
|
hlp_routes - [HlpRoute!]
|
|
id - String!
|
|
name - String!
|
|
network_id - String!
|
|
number - Int
|
|
objectid - String!
|
|
published_name - String
|
|
Arguments
|
|
stop_areas - [StopArea!]!
|
|
stop_points - [StopPoint!]!
|
|
thermometer_stop_areas - [StopArea!]!
|
|
time_tables - [TimeTable!]!
|
|
transport_type - String!
|
|
tts_name - String
|
|
type - String!
|
|
vehicle_journeys - [VehicleJourney!]!
|
|
Example
{
"blocks": [Block],
"color": "xyz789",
"colour": "xyz789",
"departures": [Departure],
"hlp_routes": [HlpRoute],
"id": "abc123",
"name": "abc123",
"network_id": "xyz789",
"number": 987,
"objectid": "xyz789",
"published_name": "xyz789",
"stop_areas": [StopArea],
"stop_points": [StopPoint],
"thermometer_stop_areas": [StopArea],
"time_tables": [TimeTable],
"transport_type": "xyz789",
"tts_name": "abc123",
"type": "abc123",
"vehicle_journeys": [VehicleJourney]
}
StopPointWithConnections
Fields
| Field Name | Description |
|---|---|
connecting_lines - [StopPointConnectingLine!]!
|
|
didok - String
|
|
id - String!
|
|
latitude - Float
|
|
longitude - Float
|
|
mobility_restricted_suitability - Boolean
|
|
name - String!
|
|
objectid - String!
|
|
platform - String
|
|
platform_tts - String
|
|
short_name - String!
|
|
stop_area_id - String
|
|
stop_areas - [StopArea!]!
|
|
ticket_machine - Boolean
|
|
Example
{
"connecting_lines": [StopPointConnectingLine],
"didok": "xyz789",
"id": "abc123",
"latitude": 123.45,
"longitude": 123.45,
"mobility_restricted_suitability": true,
"name": "abc123",
"objectid": "abc123",
"platform": "xyz789",
"platform_tts": "abc123",
"short_name": "abc123",
"stop_area_id": "abc123",
"stop_areas": [StopArea],
"ticket_machine": false
}
StopPointWithDepartures
Fields
| Field Name | Description |
|---|---|
departures - [Departure!]!
|
|
didok - String
|
|
id - String!
|
|
latitude - Float
|
|
longitude - Float
|
|
mobility_restricted_suitability - Boolean
|
|
name - String!
|
|
objectid - String!
|
|
platform - String
|
|
platform_tts - String
|
|
short_name - String!
|
|
stop_area_id - String
|
|
stop_areas - [StopArea!]!
|
|
ticket_machine - Boolean
|
Example
{
"departures": [Departure],
"didok": "abc123",
"id": "abc123",
"latitude": 987.65,
"longitude": 987.65,
"mobility_restricted_suitability": false,
"name": "abc123",
"objectid": "xyz789",
"platform": "abc123",
"platform_tts": "abc123",
"short_name": "abc123",
"stop_area_id": "abc123",
"stop_areas": [StopArea],
"ticket_machine": false
}
String
Description
Represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.
Example
"xyz789"
Target
Types
| Union Types |
|---|
Example
LinesTarget
TaskInputObject
TaskObject
Fields
| Field Name | Description |
|---|---|
duration - TimeShort
|
|
id - ID!
|
|
input - InputObject
|
|
run_at - Time
|
|
state - TaskState!
|
|
type - TaskType!
|
Example
{
"duration": TimeShort,
"id": "4",
"input": InputObject,
"run_at": "10:15:30Z",
"state": "QUEUED",
"type": "IMPORT"
}
TaskState
Values
| Enum Value | Description |
|---|---|
|
|
The task is queued |
|
|
The task is pending |
|
|
The task is failed |
|
|
The task is success |
|
|
The task is scheduled |
Example
"QUEUED"
TaskType
Values
| Enum Value | Description |
|---|---|
|
|
Import Task. This will use the latest available input |
Example
"IMPORT"
TerminusModificationCreateInputObject
Fields
| Input Field | Description |
|---|---|
line_objectid - String!
|
Line objectid |
direction - LineWay!
|
Line direction |
journey_pattern_objectid - String!
|
Journey Pattern objectid |
terminus_objectid - String!
|
Termins Stop Area objectid |
new_terminus_objectid - String!
|
New Terminus Stop Area objectid |
vehicle_journey_objectids - [String!]!
|
Vehicle Journey objectids |
Example
{
"line_objectid": "abc123",
"direction": "FORWARD",
"journey_pattern_objectid": "xyz789",
"terminus_objectid": "xyz789",
"new_terminus_objectid": "xyz789",
"vehicle_journey_objectids": ["abc123"]
}
Time
Description
ISO-8601 formatted DateTime
Example
"10:15:30Z"
TimeShort
Description
Time value in hh:mm:ss
Example
TimeShort
TimeTable
Fields
| Field Name | Description |
|---|---|
days - [String!]!
|
|
id - String!
|
|
objectid - String!
|
Example
{
"days": ["abc123"],
"id": "xyz789",
"objectid": "abc123"
}
UpdateInjectionPayload
Description
Autogenerated return type of UpdateInjection.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
|
injection - RealtimeInjection
|
Example
{
"errors": ["xyz789"],
"injection": RealtimeInjection
}
UpdateVehicleJourneyPayload
Description
Autogenerated return type of UpdateVehicleJourney.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
|
vehicle_journey - RealtimeVehicleJourney
|
Example
{
"errors": ["xyz789"],
"vehicle_journey": RealtimeVehicleJourney
}
UpdateVehicleJourneyStopPayload
Description
Autogenerated return type of UpdateVehicleJourneyStop.
Fields
| Field Name | Description |
|---|---|
errors - [String!]!
|
|
stop - ExploitationVehicleJourneyStopObject
|
Example
{
"errors": ["abc123"],
"stop": ExploitationVehicleJourneyStopObject
}
Vehicle
Fields
| Field Name | Description |
|---|---|
current_stop - ExploitationVehicleJourneyStopObject
|
|
current_stop_state - ExploitationVehicleStopStateEnum
|
|
gps - LocationObject
|
|
id - ID!
|
|
kind - VehicleKindEnum!
|
|
master - Boolean
|
|
number - String!
|
|
odometer_km - Int
|
|
player_serials - [String!]!
|
|
stop_requested - Boolean
|
|
vehicle_journey - RealtimeVehicleJourney
|
Example
{
"current_stop": ExploitationVehicleJourneyStopObject,
"current_stop_state": "AT_STOP",
"gps": LocationObject,
"id": 4,
"kind": "BUS",
"master": true,
"number": "abc123",
"odometer_km": 123,
"player_serials": ["abc123"],
"stop_requested": true,
"vehicle_journey": RealtimeVehicleJourney
}
VehicleJourney
Fields
| Field Name | Description |
|---|---|
id - String!
|
|
journey_pattern - JourneyPattern!
|
|
journey_pattern_id - String!
|
|
line - Line!
|
|
objectid - String!
|
|
schedules - [JSON!]!
|
|
stops - [ExploitationVehicleJourneyStopObject!]!
|
|
time_table_ids - [String!]!
|
|
way - String!
|
Example
{
"id": "abc123",
"journey_pattern": JourneyPattern,
"journey_pattern_id": "xyz789",
"line": "NETWORK:Line:123",
"objectid": "xyz789",
"schedules": [{}],
"stops": [ExploitationVehicleJourneyStopObject],
"time_table_ids": ["xyz789"],
"way": "xyz789"
}
VehicleJourneyStopInputObject
Fields
| Input Field | Description |
|---|---|
vehicle_journey_objectid - String!
|
Vehicle Journey objectid |
stop_objectid - String!
|
Boarding Stop Area objectid |
state - ExploitationStateEnum
|
Stop State. Default = null |
departure_delay - Int
|
Departure Delay in seconds. Default = null |
arrival_delay - Int
|
Arrival Delay in seconds. Default = null |
platform_name - String
|
Platform Name or an empty string to clear. Default = null |
Example
{
"vehicle_journey_objectid": "abc123",
"stop_objectid": "abc123",
"state": "ACTIVE",
"departure_delay": 987,
"arrival_delay": 123,
"platform_name": "xyz789"
}
VehicleKindEnum
Values
| Enum Value | Description |
|---|---|
|
|
Bus |
|
|
Train |
Example
"BUS"
WebsiteContent
Fields
| Field Name | Description |
|---|---|
content - String
|
|
enabled - Boolean!
|
|
pdf_url - String
|
|
severity - WebsiteContentSeverity!
|
|
title - String!
|
Example
{
"content": "xyz789",
"enabled": false,
"pdf_url": "abc123",
"severity": "MAJOR",
"title": "abc123"
}
WebsiteContentSeverity
Values
| Enum Value | Description |
|---|---|
|
|
Severity Major |
|
|
Severity Minor |
|
|
Severity Information |
Example
"MAJOR"