Skip to content

Instantly share code, notes, and snippets.

@micolous
Created April 24, 2016 15:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save micolous/560c9280fa4213917a2009c28baa598c to your computer and use it in GitHub Desktop.
Save micolous/560c9280fa4213917a2009c28baa598c to your computer and use it in GitHub Desktop.
Swagger API for the Transport for NSW Open Data portal.
{
"info": {
"version": "1.0",
"license": {
"url": "https://creativecommons.org/licenses/by/4.0/legalcode",
"name": "CC-BY-4.0"
},
"title": "Transport for NSW Open Data API"
},
"paths": {
"/ttds/progress": {
"post": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [
{
"name": "X-User-Agent",
"format": "",
"default": "",
"description": "",
"required": false,
"in": "header",
"type": "string",
"collectionFormat": "false"
},
{
"name": "Content-Type",
"format": "",
"default": "",
"description": "",
"required": false,
"in": "header",
"type": "string",
"collectionFormat": "false"
},
{
"description": "",
"format": "",
"allowMultiple": "false",
"required": true,
"name": "body",
"in": "body",
"type": "body",
"schema": {
"type": "object",
"description": "Request",
"example": ""
}
}
],
"tags": [
"progress"
],
"produces": [],
"summary": "The travel time along a route in progress. Requires route id.",
"operationId": "TTDSProgress",
"consumes": [
"application/vnd.ttds-route+json"
],
"description": "Please see the JSON documentation here: http://json.org/\nPlease review the <TTDS \u2013 Mobile Application API Specification>.\n\nYou must add a parameter 'User-Agent' of value [application-name] '/' [major-version] '.' [minor-version] (e.g., AppName/1.0) and type 'header'.\nYou must add a parameter 'Content-Type' of value 'application/vnd.ttds-route+json' and type 'header'.\n\nYou must provide the 'route-id' you obtained from the /traveltime/predicted API operation.\nIn the event the API returns a HTTP 400 Bad Request, a header named 'XX-Error-Msg' may return a more descriptive error message (e.g., 'No /progress request message').\n\nHere is an example HTTP POST request body:\n\n {\n\n \"route-id\": \"447429ed-88e6-4b13-b62f-9707bc92ff8f\",\n\n \"provide-travel-time\": \"true\",\n\n \"samples\": [\n\n {\n\n \"readings\": [\n\n {\n\n \"timestamp\": \"1457830013\",\n\n \"lng\": \"151.2104271\",\n\n \"lat\": \"-33.8691798\",\n\n \"bearing\": \"245\",\n\n \"speed\": \"20\"\n\n }\n\n ]\n\n }\n\n ]\n\n }\n\n\nKnown Issues:\n\n\u2022 You must use your keyboard to enter the paramater name 'X-User-Agent' and 'Content-Type' in the field below. The 'X-User-Agent' header has to be provided when testing via the API explorer as the browser overwrites the 'User-Agent' header with the browser's user agent. As a result, backend validation will fail. When using other tools and via your app, use the 'User-Agent' header.\n\n\u2022 If you receive an HTTP 500 Internal Server Error, please try again.\n\n\u2022 If the 'submit' button below does not function, please try again.\n\n\u2022 If you receive HTTP header 'XX-Error-Msg' with value 'Route Expired', please try again.\n\nNote: This operation can be used to provide location information, which doesn't require a route id. In this case, travel time will not be returned."
}
},
"/gtfs/alerts/nswtrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"nswtrains"
],
"produces": [],
"summary": "GTFS-realtime alerts for regional services",
"operationId": "alerts",
"consumes": [],
"description": "Alerts from transportnsw.info are provided by a third party and are not available with this API. They can be retrieved from https://api.nextthere.com/au_sydney/tools/GTFSRSydneyAlerts\n\nThis feed includes service alerts for bus, ferry, light rail and regional services matching those available on transportnsw.info.\n\nAdditional alerts about disruptions to regional services may be available at http://www.nswtrainlink.info/your_journey/on_the_day/service_alerts and are not currently included in the feed."
}
},
"/gtfs/schedule/nswtrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"nswtrains"
],
"produces": [
"application/zip"
],
"summary": "GTFS timetables, stops, and route shapes for NSW Trains",
"operationId": "timetables",
"consumes": [],
"description": "Please see the General Transit Feed Specification (GTFS) documentation here: https://developers.google.com/transit/gtfs/\n\nReturns ZIP file containing CSV files."
}
},
"/gtfs/schedule/buses": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"buses"
],
"produces": [
"application/zip"
],
"summary": "GTFS timetables, stops, and route shapes for Buses",
"operationId": "timetables",
"consumes": [],
"description": "Please see the General Transit Feed Specification (GTFS) documentation here: https://developers.google.com/transit/gtfs/\n\nReturns ZIP file containing CSV files."
}
},
"/live/hazards/majorevent/closed": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"majorevent"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past events",
"operationId": "ClosedMajorEvent",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/publictransport/facilitiesandoperators": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"facilitiesandoperators"
],
"produces": [],
"summary": "Facilities & Operators",
"operationId": "Locationfacilities",
"consumes": [],
"description": "Location facilities data is currently available for all Sydney Trains and NSW Trains Intercity stations, several ferry wharves and major bus interchanges.\nOperator contact details are available for all known public transport providers in NSW.\nThe Location Facilities and Operator Contact Details CSVs should be used in conjunction with the config files (included) to interpret the data."
}
},
"/live/hazards/alpine/open": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"alpine"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Current alpine conditions",
"operationId": "OpenAlpine",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/roads/static/loadingzones": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"loadingzones"
],
"produces": [],
"summary": "Location of kerbside loading zones",
"operationId": "Loadingzone",
"consumes": [],
"description": "Location of Sydney CBD kerbside loading zones (for use by delivery vehicles when loading or unloading goods) by street and time of day (hourly) in JSON and XLS (MS Excel) formats\n\nPlease see the JSON documentation here: http://json.org/\n\nPlease review the data definition guide for Loading zone (kerbside) data: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/TfNSW_LocFac_Op_Loadzone_OffStreet.pdf."
}
},
"/gtfs/alerts/sydneytrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"sydneytrains"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime alerts for Sydney Trains",
"operationId": "alerts",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format."
}
},
"/live/hazards/incident/open": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"incident"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Current incidents",
"operationId": "OpenTrafficIncidents",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/live/hazards/flood/open": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"flood"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Current floods",
"operationId": "OpenFlood",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/alerts/lightrail": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"lightrail"
],
"produces": [],
"summary": "GTFS-realtime alerts for Light Rail",
"operationId": "alerts",
"consumes": [],
"description": "Alerts from transportnsw.info are provided by a third party and are not available with this API. They can be retrieved from https://api.nextthere.com/au_sydney/tools/GTFSRSydneyAlerts\n\nThis feed includes service alerts for bus, ferry, light rail and regional services matching those available on transportnsw.info."
}
},
"/gtfs/alerts/buses": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"buses"
],
"produces": [],
"summary": "GTFS-realtime alerts for Buses",
"operationId": "alerts",
"consumes": [],
"description": "Alerts from transportnsw.info are provided by a third party and are not available with this API. They can be retrieved from https://api.nextthere.com/au_sydney/tools/GTFSRSydneyAlerts\n\nThis feed includes service alerts for bus, ferry, light rail and regional services matching those available on transportnsw.info."
}
},
"/live/hazards/roadwork/closed": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"roadwork"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past roadworks",
"operationId": "ClosedRoadwork",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/realtime/nswtrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"nswtrains"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime stop time updates for NSW Trains",
"operationId": "stopTimes",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated.\n\n\u2022Stop time updates may be inconsistent."
}
},
"/gtfs/realtime/ferries": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"ferries"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime stop time updates for Ferries",
"operationId": "stopTimes",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated.\n\n\u2022Stop time updates may be inconsistent."
}
},
"/gtfs/schedule/lightrail": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"lightrail"
],
"produces": [
"application/zip"
],
"summary": "GTFS timetables, stops, and route shapes for Light Rail",
"operationId": "timetables",
"consumes": [],
"description": "Please see the General Transit Feed Specification (GTFS) documentation here: https://developers.google.com/transit/gtfs/\n\nReturns ZIP file containing CSV files.\n\nA modified Light Rail GTFS bundle is provided by a third party and is not available with this API. It can be downloaded from http://cdn.nextthere.com/gtfs/au-sydney-lightrail.zip. This modified bundle implements blocking to trips at Central and Dulwich Hill ends of the line, allowing real-time forecasts to be provided for formed services and on outbound stops between Central and Exhibition."
}
},
"/live/cameras": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"cameras"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Image URL, GPS coordinates, and view description",
"operationId": "TrafficCamera",
"consumes": [],
"description": "Please see the GeoJSON documentation here:\nhttp://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: /content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/realtime/buses": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"buses"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime stop time updates for Buses",
"operationId": "stopTimes",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated.\n\n\u2022Stop time updates may be inconsistent."
}
},
"/live/hazards/fire/closed": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"fire"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past fires",
"operationId": "ClosedFire",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/live/hazards/alpine/closed": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"alpine"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past alpine conditions",
"operationId": "ClosedAlpine",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/live/status": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"status"
],
"produces": [],
"summary": "Current status of the Live Traffic NSW website",
"operationId": "TrafficSiteStatus",
"consumes": [],
"description": "Please see the JSON documentation here: http://json.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf.\n\nPossible value is \"AVAILABLE\". All other values for Status indicates the Live Traffic site is offline."
}
},
"/publictransport/timetables/complete/transxchange": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"transxchange"
],
"produces": [
"application/zip"
],
"summary": "TransXChange (TXC) timetables and stops",
"operationId": "Transxchange",
"consumes": [],
"description": "Please see the TXC documentation here: http://www.transxchange.org.uk/\n\nNote: Identifiers do not match the GTFS-realtime APIs and data.\n\nPlease review the TransXChange 2.4 release notes: https://opendata.transport.nsw.gov.au/content/dam/apiportal/tfnsw/docs/OD%20TXC_Data_release_notes_V_3_3_150629.docx\n (2015-06-29)."
}
},
"/gtfs/schedule/ferries": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"ferries"
],
"produces": [
"application/zip"
],
"summary": "GTFS timetables, stops, and route shapes for Ferries",
"operationId": "timetables",
"consumes": [],
"description": "Please see the General Transit Feed Specification (GTFS) documentation here: https://developers.google.com/transit/gtfs/\n\nReturns ZIP file containing CSV files."
}
},
"/publictransport/timetables/complete/gtfs": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"gtfs"
],
"produces": [
"application/zip"
],
"summary": "General Transit Feed Specification (GTFS) timetables, stops, and route shapes",
"operationId": "Sydpubtransgtfs",
"consumes": [],
"description": "Please see the General Transit Feed Specification (GTFS) documentation here: https://developers.google.com/transit/gtfs/\n\nReturns ZIP file containing CSV files.\n\nNote: Identifiers do not match the GTFS-realtime APIs and data.\n\nPlease review the GTFS release notes for ALL Greater Sydney transport operators (2015-06-29)."
}
},
"/gtfs/vehiclepos/buses": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"buses"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime vehicle positions for Buses",
"operationId": "vehiclePositions",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated."
}
},
"/live/hazards/flood/closed": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"flood"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past floods",
"operationId": "ClosedFlood",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/ttds/events": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"events"
],
"produces": [],
"summary": "Accelerations and decelerations reported across the road network",
"operationId": "TTDSEvents",
"consumes": [],
"description": "Please see the JSON documentation here: http://json.org/\nPlease review the [TTDS \u2013 Mobile Application API Specification].\n\nYou must add a parameter 'User-Agent' of value [application-name] '/' [major-version] '.' [minor-version] (e.g., AppName/1.0) and type 'header'.\n\nKnown Issues:\n\n\u2022You must use your keyboard to enter the paramater name 'x-User-Agent' in the field below. The 'User-Agent' header can't be used with the API Explorer as it is over written by the browser. Outside the API Explorer use the 'User-Agent' header."
}
},
"/live/hazards/majorevent/all": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"majorevent"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past, current and planned events",
"operationId": "AllMajorEvent",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/live/hazards/roadwork/open": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"roadwork"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Current and planned roadworks",
"operationId": "OpenRoadwork",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/schedule/sydneytrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"sydneytrains"
],
"produces": [
"application/zip"
],
"summary": "GTFS timetables, stops, and route shapes for Sydney Trains",
"operationId": "timetables",
"consumes": [],
"description": "Please see the General Transit Feed Specification (GTFS) documentation here:\nhttps://developers.google.com/transit/gtfs/\n\nReturns ZIP file containing CSV files."
}
},
"/roads/static/offstreetparking": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"offstreetparking"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Off-street parking data",
"operationId": "Offstreetparking",
"consumes": [],
"description": "Parking spaces that are available for service and delivery drivers in Sydney's CBD (at commercial rates) in GeoJSON and CSV formats\n\nPlease see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the data definition guide for Off-street parking data: https://opendata.transport.nsw.gov.au/Users/dev/Documents/Transport/WADL/loadingzones.wadl.\n\nThe API or dataset includes Sydney CBD's major parking providers and includes information for over 20,000 off street parking spaces."
}
},
"/live/hazards/roadwork/all": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"roadwork"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past, current and planned roadworks",
"operationId": "AllRoadwork",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/realtime/lightrail": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"lightrail"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime stop time updates for Light Rail",
"operationId": "stopTimes",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated.\n\n\u2022Stop time updates may be inconsistent."
}
},
"/live/hazards/incident/all": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"incident"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past and current incidents",
"operationId": "AllTrafficIncidents",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/live/hazards/fire/open": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"fire"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Current fires",
"operationId": "OpenFire",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/live/hazards/majorevent/open": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"majorevent"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Current and planned events",
"operationId": "OpenMajorEvent",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/live/hazards/alpine/all": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"alpine"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past and current alpine conditions",
"operationId": "AllAlpine",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/vehiclepos/sydneytrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"sydneytrains"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime vehicle positions for Sydney Trains",
"operationId": "vehiclePositions",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time Train Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format."
}
},
"/gtfs/alerts/ferries": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"ferries"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime alerts for Ferries",
"operationId": "alerts",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text, text-based format.\n\nKnown issues:\n\u2022The text format may be truncated.\n\u2022Only basic alerts are included, not alerts from transportnsw.info\n\nAlerts from transportnsw.info are provided by a third party and are not available with this API. They can be retrieved from https://api.nextthere.com/au_sydney/tools/GTFSRSydneyAlerts\nThis feed includes service alerts for bus, ferry, light rail and regional services matching those available on transportnsw.info."
}
},
"/gtfs/realtime/sydneytrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"sydneytrains"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime stop time updates for Sydney Trains",
"operationId": "stopTimes",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format."
}
},
"/live/hazards/fire/all": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"fire"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past and current fires",
"operationId": "AllFire",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/vehiclepos/ferries": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"ferries"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime vehicle positions for Ferries",
"operationId": "vehiclePositions",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated."
}
},
"/live/hazards/incident/closed": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"incident"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past incidents",
"operationId": "ClosedTrafficIncidents",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/ttds/route": {
"post": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occurred."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [
{
"name": "X-User-Agent",
"format": "",
"default": "",
"description": "",
"required": false,
"in": "header",
"type": "string",
"collectionFormat": "false"
},
{
"name": "Content-Type",
"format": "",
"default": "",
"description": "",
"required": false,
"in": "header",
"type": "string",
"collectionFormat": "false"
},
{
"description": "",
"format": "",
"allowMultiple": "false",
"required": true,
"name": "body",
"in": "body",
"type": "body",
"schema": {
"type": "object",
"description": "Request",
"example": ""
}
}
],
"tags": [
"route"
],
"produces": [],
"summary": "The travel time along a route in the future",
"operationId": "TTDSRoute",
"consumes": [
"application/vnd.ttds-route+json"
],
"description": "Please see the JSON documentation here: http://json.org/\nPlease see the Encoded Polyline Algorithm Format here: https://developers.google.com/maps/documentation/utilities/polylinealgorithm\nPlease review the TTDS \u2013 Mobile Application API Specification - https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf\n\nYou must add a parameter 'User-Agent' of value [application-name] '/' [major-version] '.' [minor-version] (e.g., AppName/1.0) and type 'header'.\nYou must add a parameter 'Content-Type' of value 'application/vnd.ttds-route+json' and type 'header'.\nIn the event the API returns a HTTP 400 Bad Request, a header named 'XX-Error-Msg' may return a more descriptive error message (e.g., 'No /route request message').\n\nHere is an example HTTP POST request body:\n\n {\n\n \"encoded-paths\": [\"jsumEge|y[t@FpId@`@BToCtAHrAJ~@GXBt@DN@JLvBLxE\\zCVbEVpFZjCR\\AjAD\\BHHf@Dn@DfCP|@BEr@GhAEn@Oh@[rCt@PjEx@lCb@n@JdAP\"],\n\n \"departure-time\": 1695168000\n\n }\n\n\nKnown Issues:\n\n\u2022You must use your keyboard to enter the paramater name 'User-Agent' and 'Content-Type' in the field below.\n\n\u2022If you receive an HTTP 500 Internal Server Error, please try again.\n\n\u2022If the 'submit' button below does not function, please try again."
}
},
"/gtfs/vehiclepos/lightrail": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"lightrail"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime vehicle positions for Light Rail",
"operationId": "vehiclePositions",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated."
}
},
"/live/hazards/flood/all": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"flood"
],
"produces": [
"application/vnd.geo+json"
],
"summary": "Past and current floods",
"operationId": "AllFlood",
"consumes": [],
"description": "Please see the GeoJSON documentation here: http://geojson.org/\n\nPlease review the Live Traffic Data Developer Guide: https://opendata.transport.nsw.gov.au/content/dam/apiportal/transportnsw/docs/Live_Traffic_Data_Developer_Guide.pdf."
}
},
"/gtfs/vehiclepos/nswtrains": {
"get": {
"responses": {
"200": {
"schema": {
"type": "file"
},
"examples": {},
"description": "The request has been processed successfully."
},
"404": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The requested resource could not be found."
},
"401": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The application calling the API has not been authenticated."
},
"500": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "An internal error has occured."
},
"503": {
"schema": {
"$ref": "#/definitions/Error"
},
"examples": {},
"description": "The server is currently unavailable."
}
},
"parameters": [],
"tags": [
"nswtrains"
],
"produces": [
"application/octet-stream"
],
"summary": "GTFS-realtime vehicle positions for NSW Trains",
"operationId": "vehiclePositions",
"consumes": [],
"description": "Please see the General Transit Feed Specification GTFS-realtime documentation here:\nhttps://developers.google.com/transit/gtfs-realtime/\n\nThe GTFS-realtime data exchange format is based on Protocol Buffers:\nhttps://developers.google.com/protocol-buffers/\n\nPlease review the Real time {mode} Technical Documentation\n\nYou may optionally add a parameter 'debug' of value 'true' and type 'query' to retrieve protocol messages in a text-based format.\n\nKnown issues:\n\n\u2022The text format may be truncated."
}
}
},
"schemes": [
"https"
],
"tags": [
{
"name": "ferries",
"description": "Events on Sydney Ferries"
},
{
"name": "lightrail",
"description": "Events on Sydney Light Rail"
},
{
"name": "sydneytrains",
"description": "Events on Sydney's metropolitan and inter-city train network"
},
{
"name": "nswtrains",
"description": "Events on NSW's rural train network"
},
{
"name": "buses"
},
{
"name": "cameras"
},
{
"name": "alpine"
},
{
"name": "fire"
},
{
"name": "flood"
},
{
"name": "incident"
},
{
"name": "majorevent"
},
{
"name": "roadwork"
},
{
"name": "status"
},
{
"name": "facilitiesandoperators"
},
{
"name": "gtfs"
},
{
"name": "transxchange"
},
{
"name": "loadingzones"
},
{
"name": "offstreetparking"
},
{
"name": "events"
},
{
"name": "progress"
},
{
"name": "route"
}
],
"basePath": "/v1",
"securityDefinitions": {
"oauth2": {
"flow": "application",
"tokenUrl": "https://api.transport.nsw.gov.au/auth/oauth/v2/token",
"type": "oauth2",
"scopes": {
"user": "user-defined scope"
}
}
},
"host": "api.transport.nsw.gov.au",
"definitions": {
"Error": {
"type": "object",
"description": "Error response"
}
},
"security": [
{
"oauth2": [
"user"
]
}
],
"swagger": "2.0"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment