コンテンツにスキップ

ルート形状取得(徒歩)

/shape_walk [GET]

基本情報

概要

徒歩を移動手段として2地点間のルートを検索し、その結果を形状で取得します。

URL

https://{HOST}/{CID}/v1/shape_walk

※APIマーケットの場合はURL体系が異なります

出力形式

  • GeoJSON
  • JSON

対応言語

  • ja

パラメータ

  • 「ルート検索(徒歩) /route_walk」と同等のパラメータを受け付けます

利用できないパラメータについて

本APIは以下パラメータには対応してません
・lang

  • 本API独自のパラメータは以下の通りです
パラメータ名 必須 概要 型名 デフォルト値 上下限/選択値 備考
no 経路番号 数値 1対多検索、多対1検索の場合、結果の複数経路の中から出力する経路を1つ指定する必要があります
未指定の場合は一番最初の経路が選択されます
format 出力形式 文字列 geojson geojson:GeoJSON 形式
json:JSON 形式

フォーマットについて

GeoJSON は地理形状を表現する一般的なフォーマットです。
GeoJSON形式の出力結果は、/map_script で利用できます。
JSON形式の出力結果は、/map_image で利用できます。

パラメータ構成例

・出発地:表参道駅、到着地:調布駅、出発時刻:2019年10月1日15時の徒歩ルート形状をGeoJSONで取得

/shape_walk?start=00007820&goal=00006197&format=geojson&start_time=2019-10-01T15:00:00

 

JSON 表現は URL エンコードをした上でリクエストしてください

レスポンス(GeoJSON)

  • パラメータ「format=geojson」と指定した場合に出力されるGeoJSONオブジェクトを以下に記載します

FeatureCollectionオブジェクト

名称 レスポンス名 型名 配列 説明
種別 type 文字列 FeatureCollection を表すタイプ名'FeatureCollection'を出力
形状に関する情報 features Featureオブジェクト 〇
形状全体のバウンディングボックス bbox 数値 〇

Featureオブジェクト

名称 レスポンス名 型名 配列 説明
種別 type 文字列 Feature を表すタイプ名'Feature'を出力
形状全体のバウンディングボックス bbox 数値 〇
形状の緯度経度情報 geometry Geometryオブジェクト
形状のメタ情報 properties Propertyオブジェクト ガイダンスポイント情報や線の属性などを保存

Geometryオブジェクト

名称 レスポンス名 型名 配列 説明
種別 type 文字列 Geometry を表すタイプ名'LineString'を出力
緯度経度 coordinates カンマ区切りの緯度経度の配列 〇

Propertyオブジェクト

名称 レスポンス名 型名 配列 説明
移動情報 ways 文字列 常に 'walk'が入る
区間区分群 section 文字列 出発地/経由地/目的地のまとまりを示す
線(内側) inline Lineオブジェクト
線(外側) outline Lineオブジェクト
経路番号 route_no 文字列

Lineオブジェクト

名称 レスポンス名 型名 配列 説明
線種 line_style 文字列 次のいずれかの文字列
- solid:実線
- auxiliary:補助線
線の幅(単位:px) width 文字列
線の色 color 文字列 色(RGB形式)
透過度 opacity 数値 透過度(0.0~1.0)
線端の形状 strokelinecap 文字列 線の両端の形状
常に'round'が入る
- round:丸い線端
角の形状 strokelinejoin 文字列 コーナーポイントの形状
常に'round'が入る
- round:丸い角

bbox(バウンディングボックス)について

GeoJSON形式のレスポンスに含まれるバウンディングボックスとは、形状全体を包み込む四角形の緯度経度を最高値から最低値に向かって記述したものです。
これを利用すると、形状全体が描画される尺度を/map_scriptに与えることができます。

GeoJSON形式の形状で得られる線のスタイルについて

詳細はこちらからご確認いただけます。

パラメータ構成例

・出発地:表参道駅、到着地:調布駅、出発時刻:2019年10月1日15時の徒歩ルート形状をGeoJSONで取得

/shape_walk?start=00007820&goal=00006197&format=json&start_time=2019-10-01T15:00:00

 

JSON 表現は URL エンコードをした上でリクエストしてください

レスポンス(JSON)

  • パラメータ「format=json」と指定した場合に出力されるJSONオブジェクトを以下に記載します
名称 レスポンス名 型名 配列 説明
検索結果一覧 items RouteShapeオブジェクト 〇
単位情報 unit Unitオブジェクト

RouteShapeオブジェクト

名称 レスポンス名 型名 配列 説明
マーカー一覧 marker Markerオブジェクト 〇
パス一覧 path Pathオブジェクト 〇

Markerオブジェクト

名称 レスポンス名 型名 配列 説明
画像の起点場所 position 文字列 次のいずれかの文字列
bottom:下
bottom_left:左下
bottom_right:右下
left:左
center:中央
right:右
top:上
top_left:左上
top_right:右上
default:デフォルト
中心緯度経度列 centers Coordinateオブジェクト 〇

Coordinateオブジェクト

名称 レスポンス名 型名 配列 説明
緯度 lat 数値
経度 lon 数値

Pathオブジェクト

名称 レスポンス名 型名 配列 説明
緯度経度列 coords カンマ区切りの緯度経度の配列 〇
線の幅 width 数値
線の色 color 文字列
透過度 opacity 数値
道路種別 road_type 文字列 次のいずれかの文字列
highway:高速道路
local:一般道路
ferry:フェリー

Unitオブジェクト

名称 レスポンス名 型名 配列 説明
測地系 datum 文字列
緯度経度の出力形式 coord_unit 文字列

レスポンス例

・GeoJSON形式

{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "bbox": [
                139.705691,
                35.666067,
                139.710957,
                35.668499
            ],
            "geometry": {
                "type": "LineString",
                "coordinates": [
                    [
                        139.710957,
                        35.666069
                    ],
                    [
                        139.710954,
                        35.666067
                    ],
                    [
                        139.710923,
                        35.666083
                    ],
                    [
                        ・・・
                    ]
                ]
            },
            "properties": {
                "ways": "walk",
                "section": "0001",
                "inline": {
                    "line_style": "solid",
                    "color": "#00FA46",
                    "width": 7,
                    "opacity": 0.76,
                    "strokelinecap": "round",
                    "strokelinejoin": "round"
                },
                "outline": {
                    "line_style": "solid",
                    "color": "#0A6400",
                    "width": 10,
                    "opacity": 0.5,
                    "strokelinecap": "round",
                    "strokelinejoin": "round"
                },
                "route_no": "1"
            }
        },
        {
            ・・・
        }
    ],
    "bbox": [
        139.54531,
        35.650149,
        139.710957,
        35.673294
    ]
}

・JSON形式

{
    "items": [
        {
            "marker": [ ],
            "path": [
                {
                    "coords": [
                        [
                            35.666069,
                            139.710957
                        ],
                        [
                            ・・・
                        ],
                        [
                            35.666083,
                            139.710923
                        ]
                    ],
                    "width": 7,
                    "color": "#00FA46",
                    "opacity": 0.76
                },
                {
                    ・・・
                }
            ]
        }
    ]
    "unit": {

        "datum": "wgs84",
        "coord_unit": "degree"
    }
}

エラー情報

エラーハンドリングについて

エラーメッセージは追加/変更/削除されることがあります。
エラーハンドリングされる場合はHTTPステータスコードをもとにご対応ください。
共通エラーについてはこちらをご参照ください。

HTTPステータス エラーメッセージ 発生理由
405 This http method is invalid : POST (等) 許可されていないHTTPメソッドでアクセスした場合に発生します。
400 parameter error: start: ['required field'] startが未指定の場合に発生します。
400 parameter error: goal: ['required field'] goalが未指定の場合に発生します。
400 parameter error: start: ['no definitions validate'] startの形式がJSON・ノードID・座標のいずれにも該当しない場合に発生します。
400 parameter error: goal: ['no definitions validate'] goalの形式がJSON・ノードID・座標のいずれにも該当しない場合に発生します。
400 parameter error: start_time: ['not datetime format : [value] '] start_timeが日時形式でない場合に発生します。
400 parameter error: start_time: ['an invalid datetime: [value] '] start_timeが不正な日時の場合に発生します。
400 parameter error: goal_time: ['not datetime format : [value] '] goal_timeが日時形式でない場合に発生します。
400 parameter error: goal_time: ['an invalid datetime: [value] '] goal_timeが不正な日時の場合に発生します。
400 parameter error: start_time: ["['goal_time'] must not be present with 'start_time'"] start_timeとgoal_timeを同時に指定した場合に発生します。
400 parameter error: goal_time: ["['start_time'] must not be present with 'goal_time'"] goal_timeとstart_timeを同時に指定した場合に発生します。
400 parameter error: via: ['not json format : [value] '] viaがJSON形式でない場合に発生します。
400 parameter error: via_type: ['unallowed value [value] '] via_typeにspecified・optimal以外の値を指定した場合に発生します。
400 parameter error: via_type: ["field 'via' is required"] via_typeを指定してviaを指定していない場合に発生します。
400 parameter error: speed: ['an invalid float: [value] '] speedが不正な小数形式の場合(小数第2位以上)
400 parameter error: speed: ['min value is 3.0'] speedが3.0未満の場合に発生します。
400 parameter error: speed: ['max value is 8.0'] speedが8.0を超える場合に発生します。
400 parameter error: condition: ['unallowed value [value] '] conditionにrecommend・distance・avoid_step・avoid_escalator・avoid_rain・babycar以外の値を指定した場合に発生します。
400 parameter error: order: ['unallowed value [value] '] orderにtotal_distance・time以外の値を指定した場合に発生します。
400 parameter error: options: ['unallowed value [value] '] optionsにturn_by_turn以外の値を指定した場合に発生します。
400 parameter error: format: ['unallowed value [value] '] formatにgeojson・json以外の値を指定した場合に発生します。
400 parameter error: datum: ['unallowed value [value] '] datumに不正な値を指定した場合に発生します。
400 parameter error: coord_unit: ['unallowed value [value] '] coord_unitに不正な値を指定した場合に発生します。
400 parameter error: start and goal are both multiple. startとgoalの両方をリスト形式で指定した場合に発生します。
400 parameter error: coordinate or node is required start/goalのJSON内にcoordinateまたはnodeが含まれていない場合に発生します。
400 parameter error: invalid list size start/goalのリストが0件または10件を超える場合に発生します。
400 parameter error: list item must be coordinate start/goalのリスト内の要素が座標形式でない場合に発生します。
400 parameter error: coordinate is required start/goalのJSON内に座標情報が不足している場合に発生します。
400 parameter error: lat: ['an invalid latitude: [value] '] start/goalのJSON内のlatが不正な緯度の場合に発生します。
400 parameter error: lon: ['an invalid longitude: [value] '] start/goalのJSON内のlonが不正な経度の場合に発生します。
400 parameter error: lat: ["field 'lon' is required"] start/goalのJSON内でlatを指定してlonを指定していない場合に発生します。
400 parameter error: lon: ["field 'lat' is required"] start/goalのJSON内でlonを指定してlatを指定していない場合に発生します。
400 parameter error: node: ['an invalid code: [value] '] start/goalのJSON内のnodeが不正なコードの場合に発生します。
400 parameter error: spot: ['an invalid code: [value] '] start/goalのJSON内のspotが不正なコードの場合に発生します。
400 parameter error: spot: ["depends on these values: {'lon': ..., 'lat': ...}"] start/goalのJSON内でspot指定時にlat/lonが未指定の場合に発生します。
400 parameter error: This route does not observe the distance limit. 出発地〜到着地の直線距離が200km以上の場合に発生します。
400 parameter error: via must be in json format viaのJSON変換に失敗した場合に発生します。
400 parameter error: via must be in array format viaが配列形式でない場合に発生します。
400 parameter error: goal or start is multiple via使用時にstart/goalが複数指定されている場合に発生します。
400 parameter error: coordinate is required via地点にlat/lonが指定されていない場合に発生します。
400 parameter error: lat: ['required field'] via地点のlatが未指定の場合に発生します。
400 parameter error: lon: ['required field'] via地点のlonが未指定の場合に発生します。
400 parameter error: lat: ['an invalid latitude: [value] '] via地点のlatが不正な緯度の場合に発生します。
400 parameter error: lon: ['an invalid longitude: [value] '] via地点のlonが不正な経度の場合に発生します。
400 parameter error: stay-time: ['min value is 0'] via地点のstay-timeが0未満の場合に発生します。
400 parameter error: stay-time: ['max value is 300'] via地点のstay-timeが300を超える場合に発生します。
400 parameter error: list size is too large via地点数が上限を超える場合に発生します。
400 parameter error: outside of the valid range via地点が有効範囲外の場合に発生します。
400 parameter error: invalid order 1対1検索でorderを指定した場合に発生します。
400 parameter error: invalid no 1対1検索でnoに2以上を指定した場合に発生します。