到達圏探索(バイク)
/reachable_motorcycle [GET]
基本情報
概要
バイクを移動手段として、指定した地点から指定した時間または距離で到達可能な地点を探索します。
URL
https://{HOST}/{CID}/v1/reachable_motorcycle
※APIマーケットの場合はURL体系が異なります
出力形式
- JSON
対応言語
- ja
出力順
- 所要時間の昇順
交通規制について
一方通行や曜日や時間帯による通行禁止など、交通規制情報を加味した到達圏を探索します。
パラメータ
| パラメータ名 | 必須 | 概要 | 型名 | デフォルト値 | 上下限/選択値 | 備考 |
|---|---|---|---|---|---|---|
| start | ✔ | 出発地点 | ・カンマ区切りの数値(緯度, 経度) ・文字列(ノードID) |
|||
| term | (✔) | 探索時間の範囲(単位:分) | 数値 | 最小値:1 最大値:180 |
termまたはrangeのどちらかを必ず指定してください | |
| range | (✔) | 探索距離の範囲(単位:m) | 数値 | 最小値:1 最大値:300,000 |
termまたはrangeのどちらかを必ず指定してください | |
| partition_count | 到達圏探索の分割数 | 数値 | 36 | 下記のいずれか 3,4,6,9,12,18, 36,40,45,60,72,90 |
360度の探索範囲を何分割するかを指定します 36で指定した場合は10度ずつ進行方向が区切られ、計36地点が算出されます |
|
| motorcycle_fare | 有料道路利用フラグ | 文字列 | toll | free:有料道路を利用しない toll:有料道路を利用する |
||
| displacement | 排気量(単位:cc) | 数値 | 最小値 : 1 最大値 : 3000 |
バイクの排気量を指定します | ||
| use_traffic | 渋滞情報源 | 文字列 | probe:プローブから生成された道路交通情報 | 検索対象が過去日時の場合は考慮されません ※プローブのご利用は、オプション機能のため、別途契約が必要となります |
||
| datum | 緯度経度の測地系 | 文字列 | wgs84 | wgs84:世界測地系 tokyo:旧日本測地系 |
||
| coord_unit | 出力データに含まれる緯度経度の単位 | 文字列 | degree | degree:度表記の10進法 millisec:ミリ秒表記 |
||
| start_time | (✔) | 出発時刻 | 日付時刻(YYYY-MM-DDThh:mm:ss) |
パラメータ「use_traffic」を使用するときは必須です パラメータ「time_restriction=ignore」指定時、日時規制は無効になります |
||
| time_restriction | 日時規制考慮 | 文字列 | check | check:日時規制を考慮する ignore:日時規制を考慮しない |
日時規制を考慮するかどうか指定します 詳しくはこちらをご覧ください |
車両区分について
独自の基準に基づき、排気量によって車両区分が決定されます。
1 ~ 49 : 原付二輪自動車
50 ~ 124 : 小型二輪自動車
125 ~ 399 : 普通二輪自動車
400 ~ : 大型二輪自動車
日時規制について
check指定時のレスポンスは日時指定(start_time)の有無で変わります。
start_timeあり: 指定日時の規制を考慮します。
start_timeなし: 曜日や期間を問わず、10:00~17:00の規制を考慮します。
ignore指定時は、現実世界では規制のある道路も、到達圏探索の計算対象となることにご注意ください。
パラメータ構成例
・東京タワーから排気量50ccのバイクで10分で到達出来る36地点を探索
/reachable_motorcycle?start=35.658639,139.745471&term=10&displacement=50&partition_count=36
レスポンス
| 名称 | レスポンス名 | 型名 | 配列 | Nullable | 説明 |
|---|---|---|---|---|---|
| 検索数 | count | 数値 | 出力された情報数 | ||
| 到達圏結果情報 | items | ReachablePointオブジェクト | 〇 | 到達圏結果情報のまとまり | |
| 単位情報 | unit | Unitオブジェクト | 出力される単位の情報 |
ReachablePointオブジェクト
| 名称 | レスポンス名 | 型名 | 配列 | Nullable | 説明 |
|---|---|---|---|---|---|
| 所要時間 | time | 数値 | nullable | その地点へ到達するまでの時間 | |
| 緯度経度 | coord | Coordinateオブジェクト | 地点の緯度経度 |
Coordinateオブジェクト
| 名称 | レスポンス名 | 型名 | 配列 | Nullable | 説明 |
|---|---|---|---|---|---|
| 緯度 | lat | 数値 | |||
| 経度 | lon | 数値 |
Unitオブジェクト
| 名称 | レスポンス名 | 型名 | 配列 | Nullable | 説明 |
|---|---|---|---|---|---|
| 緯度経度の測地系 | datum | 文字列 | nullable | ||
| 緯度経度の出力形式 | coord_unit | 文字列 | nullable | ||
| 時間の単位 | time | 文字列 | nullable | minute:分 パラメータで'term'を指定した場合のみ出力 |
レスポンス例
{
"count": 36,
"items": [
{
"time": 10,
"coord": {
"lat": 35.63773,
"lon": 139.743324
}
},
{
"time": 10,
"coord": {
"lat": 35.62998,
"lon": 139.737609
}
},
{
"time": 10,
"coord": {
"lat": 35.618537,
"lon": 139.715338
}
},
{
・・・
}
],
"unit": {
"datum": "wgs84",
"coord_unit": "degree",
"time": "minute"
}
}
エラー情報
エラーハンドリングについて
エラーメッセージは追加/変更/削除されることがあります。
エラーハンドリングされる場合はHTTPステータスコードをもとにご対応ください。
共通エラーについてはこちらをご参照ください。
| HTTPステータス | エラーメッセージ | 発生理由 |
|---|---|---|
| 405 | "This http method is invalid : POST"(等) | 許可されていないHTTPメソッドでアクセスされた場合に発生します。 |
| 400 | parameter error: start: "required field" | 必須パラメータである start が指定されていない、または空文字の場合に発生します。 |
| 400 | parameter error: start: "no definitions validate {'anyof definition 0': ['an invalid code: {value}'], 'anyof definition 1': ['an invalid coordinate : {value}']}" | start に指定した値のフォーマットが不正、または正しくない文字列が含まれている場合に発生します。 |
| 400 | parameter error: term: "required field", range: "required field" |
term, range のいずれも指定されていない場合に発生します。 |
| 400 | parameter error: term: "'range' must not be present with 'term'", range: "'term' must not be present with 'range'" |
term と range を同時に指定した場合に発生します。 |
| 400 | parameter error: term: "field 'term' cannot be coerced: invalid literal for int() with base 10: '{value}'" | term に数値以外の文字列を指定した場合に発生します。 |
| 400 | parameter error: term: "min value is 1" | term に下限値(1未満)の範囲外の値を指定した場合に発生します。 |
| 400 | parameter error: term: "max value is 180" | term に上限値(180超過)の範囲外の値を指定した場合に発生します。 |
| 400 | parameter error: range: "field 'range' cannot be coerced: invalid literal for int() with base 10: '{value}'" | range に数値以外の文字列を指定した場合に発生します。 |
| 400 | parameter error: range: "min value is 1" | range に下限値(1未満)の範囲外の値を指定した場合に発生します。 |
| 400 | parameter error: range: "max value is 300000" | range に上限値(300000超過)の範囲外の値を指定した場合に発生します。 |
| 400 | parameter error: partition_count: "value does not match 到達圏探索の分割数指定値判定" |
partition_count に 3, 4, 6, 9, 12, 18, 36, 40, 45, 60, 72, 90 以外の値を指定した場合に発生します。 |
| 400 | parameter error: motorcycle_fare: "unallowed value {value}" | motorcycle_fare に free, toll 以外の不正な値を指定した場合に発生します。 |
| 400 | parameter error: displacement: "field 'displacement' cannot be coerced: invalid literal for int() with base 10: '{value}'" | displacement に数値以外の文字列を指定した場合に発生します。 |
| 400 | parameter error: displacement: "min value is 1" | displacement に下限値(1未満)の範囲外の値を指定した場合に発生します。 |
| 400 | parameter error: displacement: "max value is 3000" | displacement に上限値(3000超過)の範囲外の値を指定した場合に発生します。 |
| 400 | parameter error: use_traffic: "an invalid item: {value}" | use_traffic に許可されていない値を指定した場合に発生します(許可値: probe)。 |
| 400 | parameter error: start_time: "an invalid datetime: {value}" | start_time が YYYY-MM-DDThh:mm:ss 形式でない場合に発生します。 |
| 400 | parameter error: start_time: "not datetime format : {value}" | start_time に存在しない日時を指定した場合に発生します。 |
| 400 | "start_time is required." | use_traffic を指定しているが、start_time が指定されていない場合に発生します。 |
| 400 | parameter error: time_restriction: "unallowed value {value}" | time_restriction に check, ignore 以外の不正な値を指定した場合に発生します。 |
| 400 | parameter error: datum: "unallowed value {value}" | datum に wgs84, tokyo 以外の不正な値を指定した場合に発生します。 |
| 400 | parameter error: coord_unit: "unallowed value {value}" | coord_unit に degree, millisec 以外の不正な値を指定した場合に発生します。 |
| 400 | "bad usage on this contract : use_traffic" | use_traffic を指定したが、契約でプローブのオプションが有効化されていない場合に発生します。 |