到達圏探索(車)
/reachable_car [GET]
基本情報
概要
自動車を移動手段として、指定した地点から指定した時間または距離で到達可能な地点を探索します。
URL
https://{HOST}/{CID}/v1/reachable_car
※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地点が算出されます |
|
| car_fare | 有料道路利用フラグ | 文字列 | toll | free:有料道路を利用しない toll:有料道路を利用する |
||
| regulation | 規制に関する車体情報 | JSON表現 | JSON表現の詳細はこちらをご覧ください ※大型車の規制情報利用は、オプション機能のため、別途契約が必要となります (APIマーケットでは利用不可) |
|||
| use_traffic | 渋滞情報源 | 文字列 | probe:プローブから生成された道路交通情報 | 検索対象が過去日時の場合は考慮されません ※プローブのご利用は、オプション機能のため、別途契約が必要となります (APIマーケットでは利用不可) |
||
| 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:日時規制を考慮しない ignore_all:全ての通行禁止の道路規制を考慮しない(一方通行、Uターンを除く) |
日時規制を考慮するかどうか指定します 詳しくはこちらをご覧ください |
regulation の JSON 表現
| プロパティ名 | 必須 | 概要 | 型名 | デフォルト値 | 備考 |
|---|---|---|---|---|---|
| regulation-type | 車両区分 | 文字列 | 以下のいずれかより1つ指定します standard_passenger :普通乗用自動車 medium_passenger :中型乗用自動車 specific_medium_passenger :特定中型乗用自動車 large_passenger :大型乗用自動車 standard_truck :普通貨物自動車 medium_truck :中型貨物自動車 specific_medium_truck :特定中型貨物自動車 large_truck :大型貨物自動車 large_special_vehicle :大型特殊自動車 small_special_vehicle :小型特殊自動車 light_vehicle :軽自動車 semimedium_passenger :準中型乗用自動車 semimedium_truck :準中型貨物自動車 |
||
| toll-type | 料金車種区分 | 文字列 | 以下のいずれかより1つ指定します small :軽自動車等 standard :普通車 medium :中型車 large :大型車 extra_large :特大車 |
||
| car-body | 車体情報 | JSON表現 |
car-body の JSON 表現
| プロパティ名 | 必須 | 概要 | 型名 | デフォルト値 | 備考 |
|---|---|---|---|---|---|
| height | 車の高さ(単位:cm) | 数値 | |||
| width | 車の幅(単位:cm) | 数値 | |||
| length | 車の長さ(単位:cm) | 数値 | |||
| weight | 車の重量(単位:kg) | 数値 | |||
| max-loading-capacity | 車の最大積載量(単位:kg) | 数値 |
regulation、car-bodyのJSON表現について
入力された項目のみ考慮しますので、すべての項目を指定する必要はありません。
規制に関する車体情報の用途について
regulation-type:通行止め、指定方向外通行禁止などの道路規制の対象となる車両区分を指定します。
toll-type:スマートICで通行可否を考慮する場合の料金車種区分を指定します。
car-body:車両の大きさや重量により対象道路を通行できるかどうかを判定するために使用します。
日時規制について
check指定時のレスポンスは日時指定(start_time)の有無で変わります。
start_timeあり: 指定日時の規制を考慮します。
start_timeなし: 曜日や期間を問わず、10:00~17:00の規制を考慮します。
ignore指定時は、実際は通行が規制されている道路も、到達圏探索の計算対象となることにご注意ください。
ignore_all指定時は、実際は通行が規制されている道路に加え、禁止されている道路も含んだ計算結果を返却しますので、ご利用の際は慎重にお取り扱いください。
regulationのJSON表現例
・規制種別:大型貨物自動車, 料金車種:大型自動車, 車長:1200cm, 車高:320cm, 車幅:250cm,重量:24860kg, 最大積載量:15300kg
{
"regulation-type": "large_truck",
"toll-type": "large",
"car-body": {
"length": 1200,
"height": 320,
"width": 250,
"weight": 24860,
"max-loading-capacity": 15300
}
}
パラメータ構成例
・東京タワーから車で10分で到達出来る36地点を探索
/reachable_car?start=35.658639,139.745471&term=10&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: car_fare: "unallowed value {value}" | car_fare に free, toll 以外の不正な値を指定した場合に発生します。 |
| 400 | parameter error: regulation: "not json format : {value}" | regulation に不正なJSON文字列を指定した場合に発生します。 |
| 400 | parameter error: {field}: "{error}" ※field は regulation-type, toll-type, car-body 等 | regulation の内部フィールドの値が不正な場合に発生します。 |
| 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, ignore_all 以外の不正な値を指定した場合に発生します。 |
| 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 を指定したが、契約でプローブのオプションが有効化されていない場合に発生します。 |
| 400 | "bad usage on this contract : regulation" | regulation を指定したが、契約で大型車の規制情報のオプションが有効化されていない場合に発生します。 |