SL Hållplatser och linjer 2

Listning av hållplatser och linjer i Stockholms län.

Detta API kommer stängas ned vid slutet av mars 2024. Den ersätts av SLs nya transport API.

För att kunna beskriva trafikinformation på ett konsekvent sätt, är det nödvändigt att ingående begrepp och definitioner är klara och tydliga. De viktigaste begreppen för denna tjänst presenteras nedan.

BegreppBeskrivning
SiteSite är en gruppering av StopAreas som används för att förenkla sökningen i reseplaneraren.
StopAreaStopArea är en gruppering av StopPoints med samma trafikslag och namn inom ett avgränsat geografiskt område, exempelvis en terminal.
StopPointEn StopPoint är ett stoppställe och ingår i en StopArea
LineLinje annonserad mot resenär
JourneyPatternEn unik körväg för en linje
JourneyPatternPointOnLineInnehåller samtliga stoppställen som trafikeras av en viss linje
TransportmodeTrafikslag

API

Åtkomst

URL:er för anrop finns specificerade nedan:

https://api.sl.se/api2/LineData.json?model=[model]&key=[key]
https://api.sl.se/api2/LineData.xml?model=[model]&key=[key]

Observera att det är extension i anropet som avgör formateringen av svaret.

API-nycklar, behörighet

API-nycklar kan införskaffas via Trafiklabs utvecklareportal. En API-nyckel ska användas i URL:en för ett API anrop.

Nyckelnivåer

NivåMax anrop/minutMax anrop/månad
Brons5500

Format

API:et har support för XML och JSON dataformatering. Önskad formatering anges i URL:en för ett API anrop.

Datatyper

Alla datatyper representeras alltid i strängform för respektive format. Typen angiven vid beskrivningar av modeller anger endast en lämplig datatyp att konvertera värdet till i ett givet programmeringsspråk.

TypExempelBeskrivning
Int123Alla datatyper representeras alltid i strängform. Kan dock konverteras till datatypen Int om programmeringsspråket har stöd till det

Filtrering av data

För modellerna line och jour är det önskvärt att kunna särskilja vilken trafiktyp datat avser. Detta kan åstadkommas genom att skicka med den valfria parametern DefaultTransportModeCode som kan innehålla någon av de Transportmode-värdena som returneras vid anrop till modellen transportmode, ex ”BUS” eller ”METRO” Ex:

https://api.sl.se/api2/linedata.xml?key=[nyckel]&model=line&DefaultTransportModeCode=METRO https://api.sl.se/api2/linedata.xml?key=[nyckel]&model=jour&DefaultTransportModeCode=BUS

Teckenkodning

UTF-8 används för både XML och Json.

Prestanda

Eftersom anrop returnerar relativ stor datamängd är det starkt rekommenderat att anropet innehåller följande HEADER parameter för att möjliggöra GZIP komprimering i svaret.

NyckelVärde
Accept-Encodinggzip, deflate

Uppdateringsfrekvens

API portalen uppdaterar data en gång per dygn mellan klockan 0.00-2.00 varje dag.

API modell

Anrop till https://api.sl.se/api2/LineData returnerar alltid en API modell (basmodell) tillbaka, oavsett vilken specifik datamodell man har begärt i anropet.

NyckelTypExempelBeskrivning
StatusCodeInt00 om anropet har gått bra, annars en felkod som inte kan åtgärdas via tex ett modifierat anrop
ExecutionTimeInt267Antal millisekunder som det har tagit att genererar ett svar på servern
ResponseDataObjektContainer-objekt som innehåller attribut och data
VersionString2014-06-27 14:03:39.103Senast ändrad. Uppdateras normalt sett bara en gång per dygn
TypeStringDataModelTypeAnger typen av datamodellen som svaret innehåller: Site, StopPoint, Line, JourneyPatternPointOfLine, TransportMode
ResponseDataObjektContainer-objekt som innehåller typad data

API modell


{
  "StatusCode": 0,
  "ExecutionTime": 282,
  "ResponseData": {
    "Version": "2014-10-09 01:05",
    "Type": "DataModelType",
    "Result": [
      DataModel,
      ...,
      DataModel
    ]
  }
}

<ResponseOfPwsResult>"https://www.w3.org/2001/XMLSchema"</strong> xmlns:xsi=<strong>"https://www.w3.org/2001/XMLSchema-instance"</strong>> <StatusCode>
<strong>0</strong>
</StatusCode> <ExecutionTime>
<strong>267</strong>
</ExecutionTime> <ResponseData>
<Version xmlns=
<strong>"https://api.sl.se/api/pws"</strong>>
<strong>2014-10-09 01:05</strong>
</Version> <Type xmlns=<strong>"https://api.sl.se/api/pws"</strong>><strong>DataModelType
</strong></Type> <strong><!--DataModel></DataModel></strong> <strong>...</strong> <strong> <DataModel></DataModel--></strong> </ResponseData> </ResponseOfPwsResult>

API modell för JSON

Specifikation för datamodeller

API:et tillhandahåller följande datamodeller

NyckelVärdeBeskrivning
modelsiteReturnerar svar med Site objekt
modelstopReturnerar svar med StopPoint objekt
modellineReturnerar svar med Line objekt
modeljourReturnerar svar med JourneyPatternPointOnLine objekt
modeltranReturnerar svar med TransportMode objekt

Önskad datamodell anges i URL:en för ett API anrop.

api.sl.se/api2/LineData.xml?model=[model]&key=[key]

Exempel

https://api.sl.se/api2/LineData.xml?model=site

Site

Beskrivning

Site är en gruppering av StopAreas som används för att förenkla sökningen i reseplaneraren.

Egenskaper

EgenskapKan konverteras tillExempelBeskrivning
SiteIdInt1002Unikt identifikationsnummer för en Site
SiteNameStringCentralenBenämning på området
StopAreaNumberInt1051Unikt identifikationsnummer för hållplats
LastModifiedUtcDateTimeDateTime2014-06-27 14:03:39.103Senast ändrad
ExistsFromDateDateTime2014-06-28 00:00:00.000Gäller fr.o.m. datum

Objektstruktur

{
  "SiteId": "1002",
  "SiteName": "Centralen",
  "StopAreaNumber": "1051",
  "LastModifiedUtcDateTime": "2014-06-27 14:03:39.103",
  "ExistsFromDate": "2014-06-28 00:00:00.000"
}

<Site xmlns="https://api.sl.se/api/pws">
    <SiteId>1002</SiteId>
    <SiteName>Centralen</SiteName>
    <StopAreaNumber>1051</StopAreaNumber>
    <LastModifiedUtcDateTime>2014-06-27 14:03:39.103</LastModifiedUtcDateTime>
    <ExistsFromDate>2014-06-28 00:00:00.000</ExistsFromDate>
</Site>

StopPoint

Beskrivning

StopPoints (Stoppställen) ingår i en StopArea.

Egenskaper

EgenskapKan konverteras tillExempelBeskrivning
StopPointNumberInt1051Unikt identifikationsnummer för stoppställe
StopPointNameStringT-CentralenNamn på stoppställe
StopAreaNumberInt1051Number för StopArea
LocationNorthingCoordinateDouble59.3313179695028Koordinat i WGS84-format
LocationEastingCoordinateDouble18.0616773959365Koordinat i WGS84-format
ZoneShortNameStringATaxezon. A, B eller C
StopAreaTypeCodeStringMETROSTNAnvändning av hållplatsen. BUSSTERM, TRAMSTN, METROSTN, RAILWSTN, SHIPBER eller FERRYBER
LastModifiedUtcDateTimeDateTime2014-06-03 00:00:00.000Senast ändrad
ExistsFromDateDateTime2014-06-03 00:00:00.000Gäller fr.o.m. datum

Objektstruktur

{
  "StopPointNumber": "1051",
  "StopPointName": "T-Centralen",
  "StopAreaNumber": "1051",
  "LocationNorthingCoordinate": "59.3313179695028",
  "LocationEastingCoordinate": "18.0616773959365",
  "ZoneShortName": "A",
  "StopAreaTypeCode": "METROSTN",
  "LastModifiedUtcDateTime": "2014-06-03 00:00:00.000",
  "ExistsFromDate": "2014-06-03 00:00:00.000"
}

<StopPoint xmlns="https://api.sl.se/api/pws">
    <StopPointNumber>1051</StopPointNumber>
    <StopPointName>T-Centralen</StopPointName>
    <StopAreaNumber>1051</StopAreaNumber>
    <LocationNorthingCoordinate>59.3313179695028</LocationNorthingCoordinate>
    <LocationEastingCoordinate>18.0616773959365</LocationEastingCoordinate>
    <ZoneShortName>A</ZoneShortName>
    <StopAreaTypeCode>METROSTN</StopAreaTypeCode>
    <LastModifiedUtcDateTime>2014-06-03 00:00:00.000</LastModifiedUtcDateTime>
    <ExistsFromDate>2014-06-03 00:00:00.000</ExistsFromDate>
</StopPoint>

Line

Beskrivning

Returnerar beskrivning av en linje. Innehåller referenser till trafikslag.

Egenskaper

EgenskapKan konverteras tillExempelBeskrivning
LineNumberInt3Unikt identifikationsnummer för linje
LineDesignationString3Linjebeteckning
DefaultTransportModeStringblåbussGruppering av linjer för presentation
DefaultTransportModeCodeStringBUSTrafikslag
LastModifiedUtcDateTimeDateTime2007-08-24 00:00:00.000Senast ändrad
ExistsFromDateDateTime2007-08-24 00:00:00.000Gäller fr.o.m. datum

Objektstruktur

{
  "LineNumber": "3",
  "LineDesignation": "3",
  "DefaultTransportMode": "blåbuss",
  "DefaultTransportModeCode": "BUS",
  "LastModifiedUtcDateTime": "2007-08-24 00:00:00.000",
  "ExistsFromDate": "2007-08-24 00:00:00.000"
}

<Line xmlns="https://api.sl.se/api/pws">
    <LineNumber>3</LineNumber>
    <LineDesignation>3</LineDesignation>
    <DefaultTransportMode>blåbuss</DefaultTransportMode>
    <DefaultTransportModeCode>BUS</DefaultTransportModeCode>
    <LastModifiedUtcDateTime>2007-08-24 00:00:00.000</LastModifiedUtcDateTime>
    <ExistsFromDate>2007-08-24 00:00:00.000</ExistsFromDate>
</Line>

JourneyPatternPointOnLine

Beskrivning

Returnerar kopplingen mellan stoppställe och linje. Innehåller samtliga stoppställen som trafikeras av en viss linje.

Egenskaper

EgenskapKan konverteras tillExempelBeskrivning
LineNumberInt1Unikt identifikationsnummer för linje
DirectionCodeInt1Linjeriktning
JourneyPatternPointNumberInt10008Unikt identifikationsnummer för stoppställe
LastModifiedUtcDateTimeDateTime2012-06-23 00:00:00.000Senast ändrad
ExistsFromDateDateTime2012-06-23 00:00:00.000Gäller fr.o.m. datum

XML objektstruktur

{
  "LineNumber": "1",
  "DirectionCode": "1",
  "JourneyPatternPointNumber": "10008",
  "LastModifiedUtcDateTime": "2012-06-23 00:00:00.000",
  "ExistsFromDate": "2012-06-23 00:00:00.000"
}

<JourneyPatternPointOnLine xmlns="https://api.sl.se/api/pws">
    <LineNumber>1</LineNumber>
    <DirectionCode>1</DirectionCode>
    <JourneyPatternPointNumber>10008</JourneyPatternPointNumber>
    <LastModifiedUtcDateTime>2012-06-23 00:00:00.000</LastModifiedUtcDateTime>
    <ExistsFromDate>2012-06-23 00:00:00. "000"</ExistsFromDate>
</JourneyPatternPointOnLine>

Fullständiga exempel

{
  "StatusCode": 0,
  "ExecutionTime": 327,
  "ResponseData": {
    "Version": "2014-10-09 18:05",
    "Type": "TransportMode",
    "Result": [
      {
        "DefaultTransportModeCode": "BUS",
        "DefaultTransportMode": "buss",
        "StopAreaTypeCode": "BUSTERM",
        "LastModifiedUtcDateTime": "2007-08-24 00:00:00.000",
        "ExistsFromDate": "2007-08-24 00:00:00.000"
      }
      // Additional result objects for different modes
    ]
  }
}

<ResponseOfPwsResult xmlns="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
    <StatusCode>0</StatusCode>
    <ExecutionTime>277</ExecutionTime>
    <ResponseData>
        <Version xmlns="https://api.sl.se/api/pws">2014-10-09 18:05</Version>
        <Type xmlns="https://api.sl.se/api/pws">TransportMode</Type>

        <TransportMode xmlns="https://api.sl.se/api/pws">
            <DefaultTransportModeCode>BUS</DefaultTransportModeCode>
            <DefaultTransportMode>buss</DefaultTransportMode>
            <StopAreaTypeCode>BUSTERM</StopAreaTypeCode>
            <LastModifiedUtcDateTime>2007-08-24 00:00:00.000</LastModifiedUtcDateTime>
            <ExistsFromDate>2007-08-24 00:00:00.000</ExistsFromDate>
        </TransportMode>

        <!-- Additional TransportMode elements for different modes -->

    </ResponseData>
</ResponseOfPwsResult>

Support

Räcker inte dokumentationen så sök gärna bland alla de hundratals inlägg som finns på vårt supportforum. Det är troligt att någon redan har hittat och löst samma problem som du har.

Hittar du fortfarande inte svar på din fråga så skriv ett eget inlägg på forumet så hjälper vi dig.