SEPTA logo

SEPTA

Southeastern Pennsylvania Transportation Authority: Serving Bucks, Chester, Delaware, Montgomery, and Philadelphia Counties. http://www.septa.org/

15 datasets

SEPTA Alerts

Provides access to SEPTA travel alerts via an API. All travel alerts can be viewed at https://www3.septa.org/api/Alerts/.

To retrieve travel alerts for a specific route or line, add the parameter: route/line name to the URL.

Example: https://www3.septa.org/api/Alerts/index.php?routes=bus_route_33

The API endpoint at get_alert_data.php provides more verbose messages for either the whole system or a single route
Example: https://www3.septa.org/api/Alerts/get_alert_data.php?route_id=bus_route_33

SEPTA Bus Detours

Provides access to current SEPTA bus detours via an API. All detours for all routes can be accessed at https://www3.septa.org/api/BusDetours/.
To specify detours for a specific route, add the parameter: route number to the URL.
Example: https://www3.septa.org/api/BusDetours/23

SEPTA Performance Dashboards

Visual dashboards that describe ridership and performance metrics.

SEPTA Elevator Outages

Returns a list of all elevator outages. The API does not require any paramters.

SEPTA Finances

SEPTA GTFS Real-time Alerts and Updates

SEPTA publishes real-time alerts, updates, and vehicle positions as GTFS-RT data feeds in protocol buffer (protobuf) format. A human-readable version is available from each end-point using /print.php but will only have the most recent 5 records.

SEPTA GTFS

SEPTA schedule and location information in GTFS format. Additional informatoion can be found on GitHub (https://github.com/septadev/GTFS/) or Google group (https://groups.google.com/forum/#!forum/septadev)

SEPTA Real-time Map

The SEPTA Real-time Map combines the results of several APIs, including bus, trolley and regional rail locations and alerts.

SEPTA Regional Rail APIs

The TrainView API returns information on all current regional rail trains.

The NextToArrive API returns departure and arrival times between two different stations. Please refer to the Regional Rail Inputs page (see below) to see all valid inputs. <ul> <li>req1 is the starting Regional Rail station</li> <li>req2 is the ending Regional Rail station</li> <li>req3 is an integer with the number of results to show</li> </ul>

The Arrival/Departure API returns a list/queue of regional rail trains to arrive at a station in two/both directions. The direction is demarcated as either Northbound or Southbound. The directions are obviously not geographical references, but rather a reference to the old Reading and Pennsy Railroads. The key to understanding the direction is by using Suburban Station as a starting point: Any trains that move eastbound towards Market East are all considered Northbound; trains going from suburban t o 30th St are all Southbound. The path field describes more accurately the path of travel along various branches. Every regional stop is a valid parameter. Please refer to the Regional Rail Inputs page (see below) to see all valid inputs.

SEPTA Ridership Statistics

Stop summary files represent average daily ridership at the stop level over the course of the relevant period. Trolley ridership data was generated using automatic passenger counters (APCs). Bus data is calculated from a variety of sources depending on the route and year. The bus data files represent average daily fall ridership from 2014 – present. Accurate weekend bus data was not available until 2017 at which point SEPTA had more widespread APC coverage. No bus data is available for Fall 2020 due to a malware attack. APC bus data was also not available for articulated vehicles and the Boulevard Direct from August 2020 through February 2022 due to the malware attack.

SEPTA Routes, Stops, and Locations

Geographic data for SEPTA routes, stops, and locations is available from both APIs and GIS data.

SEPTA Schedules

Provides API access to SEPTA regional rail, bus, and trolley schedules.
Regional rail schedules are accessed by train number. Train numbers are in the GTFS files or the route stop API.
Example: https://www3.septa.org/api/RRSchedules/index.php?req1=458 returns rail schedule for the Aiport Line.
Bus and trolley schedules are accessed by stop ID.
Example: https://www3.septa.org/api/BusSchedules/index.php?stop_id=12345 returns scheduled stops for Ridge Av & Walnut Ln

SEPTA SMS Transit

SEPTA SMS Transit enables users to request scheduled trip information via text message. Users subscribe to the service via text. After setting up an account, users can receive schedule information by texting the Stop ID number for a bus, trolley, or subway stop to 41411. They will receive a return text with information on the four next scheduled trips from that stop. Users can include the specific route designation in the text to receive information on a certain route if the stop serves multiple routes. In addition to using the SMS, there is also a simulator which people can use to experiment at no cost. Finally, the SMS data can be accessed from an API. The data returned by the API is currently text format, separated. The API can be accessed in the format: https://www3.septa.org/sms/var1/var2/var3/var4/var5
[var1] = stop id
[var2] = route id OR i/o for inbound/outbound
[var3] = i/o for inbound/outbound only if route id is supplied
[var4] = returns schedule times on or after specified date, format: MM/DD/YYYY. Defaults to current day.
[var5] = returns schedule times on or after specified time, format: HH:mm:ss. Defaults to current time.

Stops fall into one of three categories, here is an explanation with some sample links:

  1. Stops with service provided by only one route, stop is not the first or last stop andall travel is in a single direction:

    [https://www3.septa.org/sms/321](https://www3.septa.org/sms/321)
    Returns the next 4 scheduled trolleys (All Route 13) at Chester Ave & 49th St.
  2. Stops with service provided by multiple routes, but all travel is in one direction:

    https://www3.septa.org/sms/20645/
    Returns the next 4 scheduled trolleys at 22nd St. Station. Note the results shows trolleys regardless or route. To grep just a single route, for a multi-route, uni-directional stop, add another var:
    https://www3.septa.org/sms/20645/13/
    Returns only the Route 13 trolleys at 22nd St. Station
  3. Stops with travel in multi-directions. This is usually end points, like the trolley loop at Juniper and they may or may not have multiple routes. For example:
    https://www3.septa.org/sms/283
    Returns the next 2 inbound and 2 outbound times for all routes https://www3.septa.org/sms/283/13/
    Returns the next 2 inbound and 2 outbound times for only Route 13 https://www3.septa.org/sms/283/o
    Returns the next 4 outbound times for all routes https://www3.septa.org/sms/283/13/o
    Returns the next 4 outbound times for only Route 13

SEPTA TransitView

TransitView provides real-time information about SEPTA buses and trolleys. TransitViewAll returns all current bus and trolley locations. TrnasitView accepts a route number and retuns locations for all vehicles on that route.

Example: https://www3.septa.org/api/TransitView/index.php?route=33 returns all vehicles on bus route 33

SEPTA Trip Planner

Trip planner for finding SEPTA routes and times between an origin and destination.