Получить матрицу маршрутов на транзит

Получите матрицу транзитных маршрутов, в которой используются варианты общественного транспорта, доступные в регионе. Варианты транзита могут включать, среди прочего, автобусы, метро и поезда.

Дополнительные сведения см. в разделе Получение маршрута на транспорте .

Пример матрицы транзитных маршрутов

В следующем примере вычисляется матрица маршрутов при транзите, запрашивая стоимость проезда в дополнение к маскам полей, типичным для матрицы маршрутов:

curl -X POST -d '{
  "origins": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420761,
            "longitude": -122.081356
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.403184,
            "longitude": -122.097371
          }
        }
      }
    }
  ],
  "destinations": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420999,
            "longitude": -122.086894
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.383047,
            "longitude": -122.044651
          }
        }
      }
    }
  ],
  "travelMode": "TRANSIT"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status,condition,travelAdvisory.transitFare' \
'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'

Ответ матрицы транзитных маршрутов

Вот ответ на запрос матрицы транзитных маршрутов:

[
    {
        "originIndex": 1,
        "destinationIndex": 1,
        "status": {},
        "distanceMeters": 8709,
        "duration": "2754s",
        "travelAdvisory": {
            "transitFare": {
                "currencyCode": "USD",
                "units": "2",
                "nanos": 500000000
            }
        },
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 0,
        "destinationIndex": 0,
        "status": {},
        "distanceMeters": 530,
        "duration": "394s",
        "travelAdvisory": {
            "transitFare": {}
        },
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 1,
        "destinationIndex": 0,
        "status": {},
        "distanceMeters": 2934,
        "duration": "740s",
        "travelAdvisory": {
            "transitFare": {
                "currencyCode": "USD",
                "units": "2",
                "nanos": 500000000
            }
        },
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 0,
        "destinationIndex": 1,
        "status": {},
        "distanceMeters": 9883,
        "duration": "3049s",
        "travelAdvisory": {
            "transitFare": {
                "currencyCode": "USD",
                "units": "5"
            }
        },
        "condition": "ROUTE_EXISTS"
    }
]