Giter VIP home page Giter VIP logo

nmbs-api's Introduction

Unofficial documentation of the NMBS/SNCB API

This is a compilation of the findings I made about the API used by the Android NMBS/SNCB app. I used mitmproxy to analyse the requests and responses.

No HTTPS is used and no authentication is required (unlike the old Railtime API) for all endpoints listed below.

Get all stations

Endpoint still to be found.

Find a station

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/query.exe/dn

Parameter

<?xml version="1.0" encoding="UTF-8"?>
<ReqC ver="3.1.12 (33911)" prod="androidversion" lang="fr">
  <MLcReq>
    <MLc n="Station name to search" t="ALLTYPE"/>
  </MLcReq>
</ReqC>

Example

Request

curl --data-urlencode '<?xml version="1.0" encoding="UTF-8"?><ReqC ver="3.1.12 (33911)" prod="androidversion" lang="fr"><MLcReq><MLc n="ott" t="ALLTYPE"/></MLcReq></ReqC>' http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/query.exe/dn

Response

<?xml version="1.0" encoding="UTF-8"?>
<ResC xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="No path to XML scheme defined" ver="1.1" prod="String" lang="EN">
    <MLcRes flag="FINAL">
        <MLc t="ST" n="Ottignies" i="A=1@O=Ottignies@X=4569360@Y=50673667@U=80@L=008811601@B=1@p=1428275999@n=ac.1=GA@" x="4569360" y="50673667" />
        <MLc t="ST" n="OTTRE Eglise [TEC]" i="A=1@O=OTTRE Eglise [TEC]@X=5835554@Y=50249196@U=80@L=000260702@B=1@p=1428275999@" x="5835554" y="50249196" />
        <MLc t="ST" n="Ottenburg Dorp [De Lijn]" i="A=1@O=Ottenburg Dorp [De Lijn]@X=4615888@Y=50751774@U=80@L=000214807@B=1@p=1428275999@" x="4615888" y="50751774" />
        <MLc t="ST" n="OTTIGNIES Av. Des Combattants [TEC]" i="A=1@O=OTTIGNIES Av. Des Combattants [TEC]@X=4569109@Y=50669164@U=80@L=000243752@B=1@p=1428275999@" x="4569109" y="50669164" />
        [...]
    </MLcRes>
</ResC>

Find a connection

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/query.exe/fn (FR

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/query.exe/nl (NL)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/query.exe/en (EN)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/query.exe/de (DE)

Parameter Value
time time in format HH:MM (eg. 07:10)
date date in format DD.MM.YYYY (eg. 13.04.2015)
timeSel depart or arrive
SID [Departure station].i (see Find a station response)
ZID [Arrival station].i (see Find a station response)
start 1
hcount 0
REQ0HafasNumCons1 0
REQ0JourneyProduct_prod_list_1 11111111111111
REQ0HafasNumCons2 3
ignoreMinuteRound yes
h2g-direct 11
REQ0HafasNumCons0 3
clientType eg. ANDROID
androidversion eg. 3.1.12 (33911)
clientSystem eg. Android19
clientDevice eg. GT-I9505
htype eg. GT-I9505

Example

From Ottignies to Brussels-Nord on 13/04/2015, departure after 7:10.

Request

curl --data-urlencode "start=1&clientType=ANDROID&androidversion=3.1.12%20(33911)&time=07%3a10&hcount=0&REQ0HafasNumCons1=0&clientSystem=Android19&date=13.04.2015&REQ0JourneyProduct_prod_list_1=11111111111111&REQ0HafasNumCons2=3&ignoreMinuteRound=yes&h2g-direct=11&REQ0HafasNumCons0=3&timeSel=depart&SID=A%3d1%40O%3dOttignies%40X%3d4569360%40Y%3d50673667%40U%3d80%40L%3d008811601%40B%3d1%40p%3d1428018535%40n%3dac.1%3dGA%40&ZID=A%3d1%40O%3dBrux.-Nord%20%2f%20Bru.-Noord%40X%3d4360846%40Y%3d50859663%40U%3d80%40L%3d008812005%40B%3d1%40p%3d1428018535%40n%3dac.1%3dGA%40&clientDevice=GT-I9505&htype=GT-I9505" http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/query.exe/fn

Response

Content-Type:    application/octet-stream

To be decoded...

Find a train timetable

This is a two steps process:

  1. With the train number and the date (optional), find the train link
  2. Get the timetable with the train link and the date

Find the train link

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/trainsearch.exe/fn (FR)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/trainsearch.exe/nl (NL)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/trainsearch.exe/en (EN)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/trainsearch.exe/de (DE)

Parameter Value
trainname Train number (eg. 3615)
date date in format DD.MM.YYYY (eg. 13.04.2015) - optional
vtModeTs weekday
productClassFilter 69
L vs_json.vs_hap (json)
maxResults eg. 50
hcount 0
clientType eg. ANDROID
androidversion eg. 3.1.12 (33911)
clientSystem eg. Android19
clientDevice eg. GT-I9505
htype eg. GT-I9505

If the date parameter is not present, the response may contain multiple suggestions.

Example with date parameter

Train IC 2427 on 13/04/2015

Request

 curl --data "vtModeTs=weekday&productClassFilter=69&clientType=ANDROID&androidversion=3.1.12%20(33911)&hcount=0&maxResults=50&clientSystem=Android19&date=13.04.2015&trainname=2427&clientDevice=GT-I9505&htype=GT-I9505&L=vs_json.vs_hap" http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/trainsearch.exe/fn

Response

{ "suggestions": [
    {"value":"IC  2427","cycle":"0","pool":"80","id":"1583","dep":"Luik-Paleis","trainLink":"795198/266649/392280/68926/80","journParam":"identifiedByjourneyID=IC  2427:Luik-Paleis:13.04.2015:05:42&externalId=1583&lineName=1583&internalID=1583&cycle=0&poolUIC=80&trainName=IC  2427&trainType=007&trainClass=2&firstStationName=Luik-Paleis&firstStationEvaID=8841525&firstStationDep=13.04.2015 05:42","pubTime":"20:33","depDate":"13.04.2015","depTime":"05:42","arr":"Brussel-Zuid","arrTime":"07:58","vt":"2. Fév jusqu'au 11. Déc 2015 Lu - Ve; pas 6. Avr, 1., 14., 25. Mai, 21. Jul, 11. Nov"}
]};

The response is not valid JSON due to the ending semi-colon.

Example without date parameter

Train IC 3615 on 13/04/2015

Request

curl --data "vtModeTs=weekday&productClassFilter=69&clientType=ANDROID&androidversion=3.1.12%20(33911)&hcount=0&maxResults=50&clientSystem=Android19&trainname=3615&clientDevice=GT-I9505&htype=GT-I9505&L=vs_json.vs_hap" http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/trainsearch.exe/fn

Response

{ "suggestions": [
    {"value":"IC  3615","cycle":"4","pool":"80","id":"2261","dep":"De Panne","trainLink":"795198/267327/392280/68930/80","journParam":"identifiedByjourneyID=IC  3615:De Panne:06/04/15:15:52&externalId=2261&lineName=2261&internalID=2261&cycle=4&poolUIC=80&trainName=IC  3615&trainType=007&trainClass=2&firstStationName=De Panne&firstStationEvaID=8892338&firstStationDep=06/04/15 15:52","pubTime":"20:35","depDate":"06/04/15","depTime":"15:52","arr":"Landen","arrTime":"19:21","vt":"11. jusqu'au 19. Avr 2015 Sa, Di"},
    {"value":"IC  3615","cycle":"1","pool":"80","id":"2268","dep":"De Panne","trainLink":"915888/307564/503416/53589/80","journParam":"identifiedByjourneyID=IC  3615:De Panne:06/04/15:15:52&externalId=2268&lineName=2268&internalID=2268&cycle=1&poolUIC=80&trainName=IC  3615&trainType=007&trainClass=2&firstStationName=De Panne&firstStationEvaID=8892338&firstStationDep=06/04/15 15:52","pubTime":"20:35","depDate":"06/04/15","depTime":"15:52","arr":"Landen","arrTime":"19:21","vt":"14. Déc 2014 jusqu'au 4. Jan 2015 Je, Sa, Di; pas 18. Déc; aussi 28., 29. Mar"},
    {"value":"IC  3615","cycle":"1","pool":"80","id":"2274","dep":"De Panne","trainLink":"716277/241033/773650/148067/80","journParam":"identifiedByjourneyID=IC  3615:De Panne:06/04/15:15:52&externalId=2274&lineName=2274&internalID=2274&cycle=1&poolUIC=80&trainName=IC  3615&trainType=007&trainClass=2&firstStationName=De Panne&firstStationEvaID=8892338&firstStationDep=06/04/15 15:52","pubTime":"20:35","depDate":"06/04/15","depTime":"15:52","arr":"Landen","arrTime":"19:21","vt":"2., 3. Mai"},
    {"value":"IC  3615","cycle":"0","pool":"80","id":"2279","dep":"De Panne","trainLink":"286425/97754/35684/77633/80","journParam":"identifiedByjourneyID=IC  3615:De Panne:06/04/15:15:52&externalId=2279&lineName=2279&internalID=2279&cycle=0&poolUIC=80&trainName=IC  3615&trainType=007&trainClass=2&firstStationName=De Panne&firstStationEvaID=8892338&firstStationDep=06/04/15 15:52","pubTime":"20:35","depDate":"06/04/15","depTime":"15:52","arr":"Landen","arrTime":"19:21","vt":"Lu - Ve, pas 25. Déc, 1. Jan, 26. jusqu'au 30. Jan 2015, 6. Avr, 1., 14., 25. Mai, 21. Jul, 11. Nov"},
    {"value":"IC  3615","cycle":"0","pool":"80","id":"2280","dep":"De Panne","trainLink":"927831/311557/408824/104865/80","journParam":"identifiedByjourneyID=IC  3615:De Panne:06/04/15:15:52&externalId=2280&lineName=2280&internalID=2280&cycle=0&poolUIC=80&trainName=IC  3615&trainType=007&trainClass=2&firstStationName=De Panne&firstStationEvaID=8892338&firstStationDep=06/04/15 15:52","pubTime":"20:35","depDate":"06/04/15","depTime":"15:52","arr":"Landen","arrTime":"19:21","vt":"28. Fév jusqu'au 12. Déc 2015 Sa, Di; pas 7. jusqu'au 29. Mar 2015, 11. jusqu'au 19. Avr 2015, 2., 3. Mai; aussi 6. Avr, 1., 14., 25. Mai, 21. Jul, 11. Nov"}
]};

The response is not valid JSON due to the ending semi-colon.

Get the train timetable

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/traininfo.exe/fn/[train_link] (FR)

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/traininfo.exe/nl/[train_link] (NL)

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/traininfo.exe/en/[train_link] (EN)

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/traininfo.exe/de/[train_link] (DE)

Parameter Value
date date in format DD.MM.YYYY (eg. 13.04.2015) - optional
L vs_java3 (XML) or vs_json.vs_hap (JSON)
hcount 0
rt 1
clientType eg. ANDROID
androidversion eg. 3.1.12 (33911)
clientSystem eg. Android19
clientDevice eg. GT-I9505
htype eg. GT-I9505

The response will contain different information in the XML format and in JSON:

  • Unique in XML: arrival and departure delays
  • Unique in JSON: arrival and departure times of non-stopping stations

Example in XML

Train IC 2427 on 13/04/2015

Request

 curl "http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/traininfo.exe/fn/795198/266649/392280/68926/80?clientType=ANDROID&androidversion=3.1.hcount=0&clientSystem=Android19&date=13.04.2015&clientDevice=GT-I9505&htype=GT-I9505&L=vs_java3&rt=1"

Response

<Journey approxDelay="0">
    <St evaId="8841525" name="Liege-Palais" depTime="05:42" depDelay="" ddelay="" platform="" x="5570453" y="50646349" capacity="0|0" />
    <St evaId="8841558" name="Liege-Jonfosse" arrTime="05:44" arrDelay="" adelay="" depTime="05:45" depDelay="" ddelay="" platform="" x="5561131" y="50640299" capacity="0|0" />
    <St evaId="8841004" name="Liege-Guillemins" arrTime="05:49" arrDelay="" adelay="" depTime="05:51" depDelay="" ddelay="" platform="" x="5566695" y="50624550" capacity="0|0" />
    <St evaId="8843133" name="Sclessin" platform="" x="5558911" y="50609844" capacity="0|0" />
    <St evaId="8843109" name="Tilleur" platform="" x="5528545" y="50619678" capacity="0|0" />
    <St evaId="8843141" name="Pont-De-Seraing" platform="" x="5510162" y="50619651" capacity="0|0" />
    <St evaId="8843158" name="Jemeppe-Sur-Meuse" platform="" x="5497874" y="50618446" capacity="0|0" />
    <St evaId="8843166" name="Flemalle-Grande" platform="" x="5480983" y="50605349" capacity="0|0" />
    <St evaId="8843224" name="Leman" platform="" x="5468309" y="50600396" capacity="0|0" />
    <St evaId="8843208" name="Flemalle-Haute" arrTime="06:01" arrDelay="" adelay="" depTime="06:02" depDelay="" ddelay="" platform="" x="5457656" y="50595308" capacity="0|0" />
    [...]
</Journey>

The response contains arrival and departure delays for stopping stations but no time information at all for non-stopping stations.

Example in JSON

Train IC 2427 on 13/04/2015

Request

 curl "http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/traininfo.exe/fn/795198/266649/392280/68926/80?clientType=ANDROID&androidversion=3.1.hcount=0&clientSystem=Android19&date=13.04.2015&clientDevice=GT-I9505&htype=GT-I9505&L=vs_json.vs_hap&rt=1"

Response

{ "suggestions": [
    {
    "object_0":"identifiedByexternalID=2427&#183;88____&#183;NULL",
    "extId":"2427&#183;88____&#183;NULL",
    "name":"IC  2427",
    [...]
    "locations":[
        {"name":"Liege-Palais","x":"5570453","y":"50646349","evaId":"8841525","depTime":"05:42","arrTime":"","depDate":"13/04/15","arrDate":""},
        {"name":"Liege-Jonfosse","x":"5561131","y":"50640299","evaId":"8841558","depTime":"05:45","arrTime":"05:44","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Liege-Guillemins","x":"5566695","y":"50624550","evaId":"8841004","depTime":"05:51","arrTime":"05:49","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Sclessin","x":"5558911","y":"50609844","evaId":"8843133","depTime":"05:55","arrTime":"05:55","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Tilleur","x":"5528545","y":"50619678","evaId":"8843109","depTime":"05:56","arrTime":"05:56","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Pont-De-Seraing","x":"5510162","y":"50619651","evaId":"8843141","depTime":"05:57","arrTime":"05:57","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Jemeppe-Sur-Meuse","x":"5497874","y":"50618446","evaId":"8843158","depTime":"05:57","arrTime":"05:57","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Flemalle-Grande","x":"5480983","y":"50605349","evaId":"8843166","depTime":"05:58","arrTime":"05:58","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Leman","x":"5468309","y":"50600396","evaId":"8843224","depTime":"05:59","arrTime":"05:59","depDate":"13/04/15","arrDate":"13/04/15"},
        {"name":"Flemalle-Haute","x":"5457656","y":"50595308","evaId":"8843208","depTime":"06:02","arrTime":"06:01","depDate":"13/04/15","arrDate":"13/04/15"},
        [...]
    ],
    "dep":"Liege-Palais",
    "arr":"Bruxelles-Midi",
    "depEva":"8841525",
    "arrEva":"8814001",
    "depTime":"05:42",
    "arrTime":"07:58",
    "pubTime":"20:44",
    "summary":"IC  2427, Liege-Palais (05:42) - Bruxelles-Midi (07:58)",
    [...]
    }
]}

The response does not contain delay information but contains arrival and departure time for non-stopping stations.

Get the liveboard of a station

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/stboard.exe/fn (FR)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/stboard.exe/nl (NL)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/stboard.exe/en (EN)

POST http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/stboard.exe/de (DE)

Parameter Value
time time in format HH:MM (eg. 07:10)
date date in format DD.MM.YYYY (eg. 13.04.2015)
inputTripelId [Station].i (see Find a station response)
boardType dep or arr
maxJourneys eg. 50
productsFilter 11111111111111 (all)
L vs_java3
start yes
showHimMessages 1
hcount 0
clientType eg. ANDROID
androidversion eg. 3.1.12 (33911)
clientSystem eg. Android19
clientDevice eg. GT-I9505
htype eg. GT-I9505

productsFilter can have the following values:

  • 11111111111111 All
  • 11011101000111 International trains only
  • 01111101000111 IC/IR/P/ICT only
  • 01011111000111 City Rail/L only
  • 01011101100111 Métro only
  • 01011101010111 Bus only
  • 01011101001111 Tram only

Combinations are also possible (to be further completed).

Example

Request

curl --data "start=yes&inputTripelId=A%3d1%40O%3dOttignies%40X%3d4569360%40Y%3d50673667%40U%3d80%40L%3d008811601%40B%3d1%40p%3d1428018535%40n%3dac.1%3dGA%40&clientType=ANDROID&androidversion=3.1.12%20(33911)&time=07%3a10&hcount=0&productsFilter=11111111111111&clientSystem=Android19&date=13.04.2015&maxJourneys=50&L=vs_java3&showHimMessages=1&clientDevice=GT-I9505&htype=GT-I9505&boardType=dep" http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/stboard.exe/fn

Response

<StationTable>
    <St evaId="8811601" name="Ottignies" />
    <Journey fpTime="07:12" fpDate="13/04/15" delay="-" targetLoc="Louvain-La-Neuve-Univ." dirnr="8811676" hafasname="L   3956" prod="L   3956#L" class="64" dir="Louvain-La-Neuve-Univ." administration="88____" is_reachable="0" />
    <Journey fpTime="07:12" fpDate="13/04/15" delay="-" targetLoc="WAVRE Gare [TEC]" dirnr="242668" hafasname="Bus   22" prod="Bus   22#Bus" class="512" dir="WAVRE Gare [TEC]" administration="SNCB" depStation="OTTIGNIES Gare [TEC]" is_reachable="0" />
    <Journey fpTime="07:12" fpDate="13/04/15" delay="-" targetLoc="LOUVAIN-LA-NEUVE Gare D'Autobus [TEC]" dirnr="242650" hafasname="Bus    3" prod="Bus    3#Bus" class="512" dir="LOUVAIN-LA-NEUVE Gare D'Autobus [TEC]" administration="SNCB" depStation="OTTIGNIES Gare [TEC]" is_reachable="0" />
    <Journey fpTime="07:14" fpDate="13/04/15" delay="-" targetLoc="Bruxelles-Midi" dirnr="8814001" hafasname="IC  2427" prod="IC  2427#IC" class="4" dir="Bruxelles-Midi" administration="88____" is_reachable="0" />
    <Journey fpTime="07:17" fpDate="13/04/15" delay="-" targetLoc="Bruxelles-Midi" dirnr="8814001" hafasname="L   6578" prod="L   6578#L" class="64" dir="Bruxelles-Midi" administration="88____" is_reachable="0" />
    <Journey fpTime="07:18" fpDate="13/04/15" delay="-" platform="3" targetLoc="Luxembourg (l)" dirnr="8200100" hafasname="IC  2106" prod="IC  2106#IC" class="4" dir="Luxembourg (l)" administration="88____" is_reachable="0" />
    [...]
</StationTable>

Get the perturbations RSS feed

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/fn?tpl=rss_feed (FR)

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/nl?tpl=rss_feed (NL)

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/en?tpl=rss_feed (EN)

GET http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/de?tpl=rss_feed (DE)

Example

Request

curl http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/fn?tpl=rss_feed

Response

<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
    <channel>
    <title>SNCB Perturbations sur le réseau</title>
    <description></description>
    <link>http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/fn?tpl=him_map</link>
    <language>fr-be</language>
    <copyright>&#169; 2013 SNCB</copyright>
    <pubDate>Mon, 06 Apr 2015 21:16:00 +0100</pubDate>
    <item>
        <title><![CDATA[Tournai [NMBS/SNCB] - Lille Flandres(f): Dégâts à la caténaire.]]></title>
        <description><![CDATA[Dégâts à la caténaire. <br /><br />Trafic perturbé. <br /><br />Des retards et suppressions sont possibles. <br /><br />Certains trains entre Tournai et Lille Flandres sont remplacés par un bus.<br /><br />Durée du dérangement indéterminée.<br /> <br />Ecoutez les annonces faites dans le train. <br />Ecoutez les annonces faites en gare. <br />Consultez les tableaux d'affichage de la gare.<br/><a href="http://www.belgianrail.be/jp/download/brail_him/1425215921219_Aff 62x100-FR-WE-Lille-03.pdf">Horaire week-end et jours fériés</a><br/><a href="http://www.belgianrail.be/jp/download/brail_him/1427104588807_Aff 62x100-Fr-semaine-Lille-03-15.pdf">Horaire en semaine</a><br/>]]></description>
        <link>http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/fn?L=vs_himmap&amp;tpl=showmap_external&amp;messageID=5464&amp;channelFilter=timetable&amp;</link>
        <pubDate>Tue, 31 Mar 2015 05:28:36 +0200</pubDate>
        <guid isPermaLink="false">http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/fn?tpl=him_map5464</guid>
        <dc:creator></dc:creator>
    </item>
    <item>
        <title><![CDATA[Statte - Andenne: Affaissement de terrain.]]></title>
        <description><![CDATA[Affaissement de terrain.<br /><br /> Trafic perturbé.<br /><br /> Des retards sont possibles.<br /><br /> Durée des travaux indéterminée.<br /><br /> Ecoutez les annonces faites dans le train.]]></description>
        <link>http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/fn?L=vs_himmap&amp;tpl=showmap_external&amp;messageID=5979&amp;channelFilter=timetable&amp;</link>
        <pubDate>Mon, 06 Apr 2015 04:56:41 +0200</pubDate>
        <guid isPermaLink="false">http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/help.exe/fn?tpl=him_map5979</guid>
        <dc:creator></dc:creator>
    </item>
    </channel>
</rss>

nmbs-api's People

Contributors

awery avatar

Stargazers

 avatar lis~ avatar Tim Simon avatar Michiel Van Herwegen avatar FireFly avatar Guilherme Lopes de Morais Filho avatar  avatar Glenn Plas avatar Vuokko Vuorinnen avatar  avatar Pieter Colpaert avatar Jens Nevens avatar

Watchers

 avatar

Forkers

eriksmets

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.