경로의 통행료 계산

경로 또는 경로 매트릭스를 계산할 때 경로에 대한 통행료를 고려해야 할 수 있습니다. 일부 도시의 경우 해당 경로의 예상 통행료를 해당 통화로 계산할 수 있습니다.

경로 매트릭스의 통행료를 확인하려면 경로 매트릭스의 통행료 계산을 참고하세요.

지원되는 유료 통화 위치 목록은 TollPass 참조를 확인하세요.

통행료 계산 방법

Routes API는 운전자 또는 차량이 이용할 수 있는 통행료 할인 또는 패스와 가장 편리한 결제 수단을 고려하여 예상 통행료를 계산합니다. 지정된 경로에 통행료가 없으면 Routes API는 알 수 없는 요금이 포함된 통행료가 있음을 나타냅니다.

정확한 통행료 견적을 받으려면 요청에 다음 정보를 포함해야 합니다.

  • 경로에 사용된 차량의 배출 유형(VehicleEmissionType). 배출 유형을 입력하지 않으면 휘발유 연료 차량의 통행료가 반환됩니다.
  • 차량과 운전자가 사용하는 모든 통행료는 (TollPass)를 사용합니다. API는 통행료를 사용하여 정확한 통행료를 결정하고 요청의 통행료가 경로와 관련이 없는 경우 현금을 반환합니다.
  • 필요한 경우 유료 도로를 피할 수 있는 방법을 지정합니다. 가능한 경우 유료 도로를 피하려면 avoidTollsRouteModifier로 추가하세요.

통행료를 사용하여 통행료 계산

통행료를 사용하여 통행료를 계산하려면 요청의 일부로 통행료를 지정합니다. 그러면 API가 패스 가격을 반환합니다.

  • 잘못된 톨 패스를 지정하면 패스가 무시됩니다.

  • 여러 통행료를 배열로 지정하면 API는 각 패스의 경로 가격을 계산하려고 시도합니다.

톨 패스 방식은 지역마다 다를 수 있습니다.

  • 통행료가 더 낮을 수 있음: 일부 지역에서는 톨 패스가 있는 운전자 또는 차량이 그렇지 않은 사용자와 다른 통행료를 지불합니다. 예를 들어 미국 워싱턴주 시애틀에서 Good To Go! 통행료를 지불하면 통행료가 없는 경우보다 낮은 통행료를 지불합니다.

  • 일부 도로에 통행료가 필요할 수 있음: 인도네시아 등 일부 지역에는 유료 도로가 있습니다. 통행료가 필요한 경로에 통행료를 지정하지 않으면 API가 통행료를 반환하지 않습니다.

경로의 통행료 계산

다음 예에서는 computeRoutes 메서드를 사용하여 톨 패스가 사용될 때 통행료 정보와 예상 가격을 반환합니다. 이 예에서 개발자는 다음과 같은 작업을 하게 됩니다.

  • 통행료 정보 계산을 사용 설정하려면 extraComputations 배열 필드를 TOLLS로 설정합니다.

  • 요청의 routeModifiers 필드를 사용하여 차량 유형과 통행료 유형을 지정합니다. 반환되는 통행료는 지정된 차량 유형 및 탑승권에서 사용된 가격을 기준으로 합니다. 패스가 2개 이상 지정되면 가장 저렴한 가격이 반환됩니다.

  • 응답 필드 마스크를 사용하여 응답에 통행료 정보를 반환하도록 메서드를 구성합니다. 이 예에서는 요청의 응답 필드 마스크에 다음 속성이 포함되었습니다.

    • routes.travelAdvisory.tollInfo 필드를 사용하여 전체 경로에 대한 정보를 반환할 수 있습니다.

    • routes.legs.travelAdvisory.tollInfo: 각 구간의 정보를 반환합니다.

통행료 정보 요청

curl -X POST -d '{
  "origin":{
    "location":{
      "latLng":{
        "latitude":42.340173523716736,
        "longitude":-71.05997968330408
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":42.075698891472804,
        "longitude": -72.59806562080408
      }
    }
  },
  "travelMode": "DRIVE",
  "extraComputations": ["TOLLS"],
  "routeModifiers":{
    "vehicleInfo":{
      "emissionType": "GASOLINE"
    },
    "tollPasses": [
      "US_MA_EZPASSMA",
      "US_WA_GOOD_TO_GO"
    ]
  }
}' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.travelAdvisory.tollInfo,routes.legs.travelAdvisory.tollInfo' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

통행료 정보가 포함된 응답

응답에는 TollInfo (REST) 또는 TollInfo (gRPC) 객체의 통행료 정보가 포함됩니다. 이 예에서는 전체 경로와 경로의 각 구간에 대한 통행료 정보를 반환합니다.

{
  "routes": [
    {
      "legs": [
        {
          "travelAdvisory": {
            "tollInfo": {
              "estimatedPrice": [
                {
                  "currencyCode": "USD",
                  "units": "4",
                  "nanos": 400000000
                }
              ]
            }
          }
        }
      ],
      "distanceMeters": 150338,
      "duration": "6650s",
      "travelAdvisory": {
        "tollInfo": {
          "estimatedPrice": [
            {
              "currencyCode": "USD",
              "units": "4",
              "nanos": 400000000
            }
          ]
        }
      }
    }
  ]
}