1.2.1 â€ĸ Published 2 years ago

mta-realtime-subway-departures v1.2.1

Weekly downloads
58
License
MIT
Repository
-
Last release
2 years ago

MTA Realtime Subway Departures Client

This is a JavaScript client for New York City's MTA GTFS-realtime Subway API.

🚧 Installation

npm install --save mta-realtime-subway-departures

ℹī¸ Usage

Call client.departures() with a subway complex ID to get the next subway departures leaving that station.

Supported complexes are defined in this file.

const { createClient } = require('mta-realtime-subway-departures');

// Get your API key at https://api.mta.info
const MTA_API_KEY = 'Your-API-Key-Here';
const client = createClient(MTA_API_KEY);

client.departures(625)
  .then((response) => {
    console.log(response);
  });

// Also accepts an array of complex IDs.
client.departures([625, 232])
  .then((responses) => {
    // Responses is an array of response objects.
    console.log(responses);
  });

A response object includes subway departure data:

{
  "complexId": 167,
  "name": "W 4 St",
  "lines": [
    {
      "name": "8th Av - Fulton St",
      "departures": {
        "S": [
          {
            "routeId": "A",
            "time": 1530134035,
            "destinationStationId": "209"
          },
          {
            "routeId": "E",
            "time": 1530134234,
            "destinationStationId": "171"
          }
        ],
        "N": [
          {
            "routeId": "C",
            "time": 1530134007,
            "destinationStationId": "302"
          },
          {
            "routeId": "E",
            "time": 1530134010,
            "destinationStationId": "278"
          }
        ]
      }
    },
    {
      "name": "6th Av - Culver",
      "departures": {
        "S": [
          {
            "routeId": "B",
            "time": 1530134084,
            "destinationStationId": "55"
          },
          {
            "routeId": "D",
            "time": 1530134272,
            "destinationStationId": "58"
          }
        ],
        "N": [
          {
            "routeId": "M",
            "time": 1530134182,
            "destinationStationId": "114"
          },
          {
            "routeId": "F",
            "time": 1530134222,
            "destinationStationId": "254"
          }
        ]
      }
    }
  ]
}

🔃 Response structure

A response object contains the following properties:

FieldDescription
response.linesDepartures are categorized into each separate line that serves the complex (e.g. there are two lines at West 4th Street, the 6th Av - Culver BDFM line and the 8th Av - Fulton St ACE line)
response.lines[index].departuresDepartures are split between north-bound and southbound trains
response.lines[index].departures.NAn array of departure objects. N means North, and refers to "Uptown and Bronx-bound trains" and "Times Square Shuttle to Grand Central"
response.lines[index].departures.SAn array of departure objects. S means South, and refers to "Downtown and Brooklyn-bound trains" and "Times Square Shuttle to Times Square"

Each departure object includes time, a unix timestamp of the next departure, the routeId, e.g. A, C or E train, and destinationStationId where the train is headed (see mta-subway-stations for a list of stations).

🌎 External Resources

  • note you must be logged in to view the links below

Using MTA Realtime Feeds

The list of separate feed URLs

1.2.1

2 years ago

1.2.0

3 years ago

1.1.1

3 years ago

1.1.0

4 years ago

1.0.0

4 years ago

0.0.13

6 years ago

0.0.12

6 years ago

0.0.11

6 years ago

0.0.10

6 years ago

0.0.9

6 years ago

0.0.8

6 years ago

0.0.7

6 years ago

0.0.6

6 years ago

0.0.5

6 years ago

0.0.4

6 years ago