ガイドAPIリファレンス
ガイド

通知の概要

通知は、計算されたルートまたはリクエストされた計算に関する警告メッセージまたはエラーメッセージを伝えるAPIレスポンスの要素です。 APIレスポンスの最上位レベルに表示されてリクエスト全体に関わる情報を伝達したり、ルートセクションに表示されてルートの特定の部分で見つかった問題を通知したりできます。

通知の例を次に示します。

  • noRouteFound - 特定のパラメーターを持つルート計算リクエストが失敗した。
  • violatedVehicleRestriction - 計算されたルートの一部が、トラックの最大重量制限など、車両固有の制限に違反している。
  • violatedAvoidTunnel - 計算されたルートの一部が、ルート計算リクエストで設定された要件の1つであるトンネルを回避できない。

通知の形式

次の通知の例には、通知が持つことができるすべての属性が含まれています。 属性の数は、通知タイプによって異なります。

{
  "title": "Violated vehicle restriction.",
  "code": "violatedVehicleRestriction",
  "severity": "critical",
  "details": [
    {
      "type": "restriction",
      "cause": "Route violates vehicle restriction",
      "maxGrossWeight": 5000,
      "maxWeight": {
      "value": 5000,
      "type": "gross"
      }
    }
  ]
}
属性説明
titlecode属性を補足する、人間が読める文字列。
code通知タイプを示す列挙型 (enum) 文字列。
severity通知の重大度を示す列挙型 (enum) 文字列 (infoまたはcriticalのいずれか)。
details特定の通知に関する追加情報を伝えるオブジェクト。
📘

criticalの重大度レベルの通知を含むルートは、違反している制限事項の影響を徹底的に評価、検討した後にのみ使用します。 APIのアップデートにより、新しいcritical重大度レベルの通知が追加され、以前は失敗していたルート計算はこの新しい通知コードを持つルートを返すようになりました。 そのようなルートは廃棄することをお勧めします。

ルート上の通知を見つける

計算されたルート上に適用される通知の正確な位置を確認するには、ルート計算リクエストでspans=noticesオプションを使用します。 これは、親セクションのnotices配列のインデックスのリストを含むnotices配列を持つスパンを返します。

次のサンプルリクエストとそのレスポンス (一部省略) を参照してください。

curl -gX GET 'https://router.hereapi.com/v8/routes?'\
'origin=51.019519,17.161546&'\
'destination=51.108671,17.038804&'\
'return=polyline&'\
'spans=notices&'\
'transportMode=truck&'\
'vehicle[grossWeight]=12000&'\
'vehicle[height]=400&'\
'apiKey=YOUR_API_KEY'
{
  "spans": [
    {
      "offset": 0
    },
    {
      "offset": 438,
      "notices": [
        0
      ]
    },
    {
      "offset": 462,
      "notices": [
        0,
        1
      ]
    }
  ],
  "notices": [
    {
      "title": "Violated vehicle restriction.",
      "code": "violatedVehicleRestriction",
      "severity": "critical",
      "details": [
        {
          "type": "restriction",
          "cause": "Route violates vehicle restriction",
          "maxGrossWeight": 9000,
          "maxWeight": {
            "value": 9000,
            "type": "gross"
          }
        }
      ]
    },
    {
      "title": "Violated vehicle restriction.",
      "code": "violatedVehicleRestriction",
      "severity": "critical",
      "details": [
        {
          "type": "restriction",
          "cause": "Route violates vehicle restriction",
          "maxGrossWeight": 3500,
          "maxWeight": {
            "value": 3500,
            "type": "gross"
          },
          "timeDependent": true,
          "restrictedTimes": "++(h0){h6}(h9){h9}(h22){h2}"
        }
      ]
    }
  ]
}

関連コンテンツ