APIリファレンス

2015.08.17 初版作成
2015.08.28 最終更新 2016.06.14 ハッカソンwikiの内容をバックアップコピー

目次

HTTPリクエスト

JSON APIではサービスとの通信プロトコルにHTTP/1.1を使用し、GETメソッドでリクエストを送信します。

GET https://shizuokashi-road.appspot.com/api/table/{サービスポイント名} HTTP/1.1

利用可能なサービスポイント名の一覧は公開リソース一覧を参照して下さい。

クエリパラメータ

下記のクエリパラメータが定義されています。

パラメータ名 必須 説明 使用例
認証など
token 運営者からあらかじめ配布された認証用トークン。 このパラメータは必須です。

/api/table/baseRoad?token=CAQSD0NBUVls

ページング
pageToken - 検索結果が1ページに収まらなかった場合、次のページを取得するために指定するトークンです。 検索結果に次のページが存在する場合、レスポンスのnextPageTokenプロパティにトークンが格納されています。

/api/table/baseRoad?pageToken=S3Zha2JHZHh3SQ

limit ページあたりのデータ取得件数を指定します。orderByを指定した場合、必ず指定する必要があります。

/api/table/Helicopter?limit=3

防災ヘリポートの最初の3件を取得
並び順指定
orderBy - データの並び順を属性名で指定します。 昇順(値の小さいものから順に)の場合は属性名に続けて+ascを、 降順(値の大きいものから順に)の場合は属性名に続けて+descをつけます。 昇順の場合の+ascは省略可能です。 limitを同時に指定する必要があります。

/api/table/disaster?orderBy=occur_date+desc&limit=10

災害情報を新たに発生したものから順に取得
空間検索
extent - 指定された矩形内から検索する際に指定します。 南西端緯度, 南西端経度, 北東端緯度, 北東端経度の順に, カンマ[,]区切りの小数で指定します。 属性検索との併用はサポートしていません。

/api/table/baseRoad?extent=35,138.4,35.05,138.48

北緯35度と北緯35.05度の緯線および東経138.4度と東経138.48度の経線に囲まれた範囲の道路網図
radius - 指定された円の内側から検索する際に指定します。円の半径をメートルで指定します。 radiusを指定する場合は必ずlat, lngも指定する必要があります。 属性検索との併用はサポートしていません。

/api/table/disaster?radius=50&lat=34.975&lng=138.382

東経138.382、北緯34.975の地点から半径50メートル以内で発生した災害情報
lat 指定された円の内側から検索する際に指定します。円の中心の緯度を指定します。 radiusの例を参照してください。
lng 指定された円の内側から検索する際に指定します。円の中心の経度を指定します。 radiusの例を参照してください。
属性検索
{属性名} - 属性値により絞込み検索する際に指定します。 パラメータ名には属性名を使用します。 属性名は、以下のいずれかの条件にあてはまるものが利用できます。
  • 対象リソースのレスポンスに含まれるFeature#propertiesのフィールドのうち、値型が文字列型または数値型であるもの
  • 災害情報のレスポンスに含まれるDisasterReason型のFeature#properties.reasonsのフィールドtype, reason, reason_detail
複数の属性をパラメータに指定すると、すべてのパラメータに適合する結果を返しますが、空間検索との併用はサポートしていません。 下記の5つの検索タイプをサポートしています。
検索タイプ 検索値 備考
完全一致 {検索値} 文字列・数値・日付に適用可能です。
部分一致 %{検索値}% 文字列に適用可能です。
より大きい >{検索値} 数値・日付に適用可能です。
より小さい <{検索値} 数値・日付に適用可能です。
一致しない !{検索値} 文字列・数値に適用可能です。

/api/table/disaster?reason=台風

台風が原因の災害

/api/table/disaster?occur_date=>2015-10-01 00:00:00

10月1日以降に発生した災害

/api/table/roadRegulation?road_name=%高速道路%

道路名に「高速道路」を含む道路規制

レスポンス

本文に下記の構造をもつJSON文字列を返します。

成功時のレスポンス

{
  "Success": true,
  "Data": <FeatureCollection>,
  "Error": null
}
プロパティ名 説明
Success Boolean 成功の場合はtrueです。
Data FeatureCollection データを保持するコンテナオブジェクトです。
Error String 成功の場合はnullです。

FeatureCollection

GeoJSONに準拠したフューチャーコレクションオブジェクト(http://geojson.org/geojson-spec.html#feature-collection-objects)を拡張し、shapeUrlおよびnextPageTokenを追加したオブジェクトです。

{
  "type": "FeatureCollection",
  "features": [
    <Feature>
  ],
  "shapeUrl": <String>,
  "nextPageToken": <String>
}
プロパティ名 説明
type String 常に"FeatureCollection"が格納されます。
features Array<Feature> データの配列です。
shapeUrl String このリソースのシェープファイルをダウンロードできるURLです。
nextPageToken String 必要に応じて、次のページを取得するためのトークンが格納されます。詳細は利用ガイドの該当項目を参照下さい。

Feature

1個のデータを表します。 GeoJSONに準拠したフューチャーオブジェクト(http://geojson.org/geojson-spec.html#feature-objects)です。 geometryプロパティに座標情報を、propertiesプロパティに属性情報を含みます。

{
  "type": "Feature",
  "id": <ID: String>,
  "geometry": <Geometry>,
  "properties": <Object>
}
プロパティ名 説明
type String 常に"Feature"が格納されます。
id String データを一意に識別するIDです。
geometry Geometry 位置情報です。GeoJSONに準拠します。 図形の種類には以下に示す3種類: ポイント、ライン、ポリゴンがあり、どの種類の図形をもつかはリソースごとに異なります。
図形の種類 該当するリソースの例 JSONの例 説明
ポイント 災害情報
{
  "type": "Point",
  "coordinates": [ 138.01, 35.41 ]
}
coordinatesには要素数2の数値型の配列が格納されます。0番目の要素が経度、1番目の要素が緯度を表します。
ライン 道路規制情報
{
  "type": "LineString",
  "coordinates": [
    [ 138.01, 35.42 ],
    [ 138.02, 35.43 ],
    [ 138.03, 35.44 ],
    [ 138.04, 35.45 ]
  ]
}
coordinatesには座標の配列が格納されます。座標とは要素数2の数値型の配列で、0番目の要素が経度、1番目の要素が緯度を表します。
ポリゴン 孤立集落
{
  "type": "Polygon",
  "coordinates": [
    [
      [ 138.01, 35.43 ],
      [ 138.02, 35.41 ],
      [ 138.03, 35.42 ],
      [ 138.01, 35.43 ]
    ]
  ]
}
coordinatesにはリングの配列が格納されます。リングとは座標の列で、最初と最後の座標が一致して閉曲線となるものをさします。
properties Object 属性名と属性値の組です。 値型は文字列型、数値型および下記に掲げる独自定義型のいずれかとなります。

DisasterReason

災害情報のプロパティreasonsに配列形式で格納され、その災害の原因のひとつを表します。

プロパティ名 説明
type String 災害区分
reason String 災害原因
reason_detail String 災害原因の詳細

Attachment

災害情報および道路規制情報のプロパティrelated_filesに配列形式で0個以上格納され、この災害情報または道路規制情報に関連付けられた添付ファイルを表します。

プロパティ名 説明
open_flag String 公開可否情報です。"0"ならば非公開、"1"ならば公開です。
type String ファイルの種類です。
name String ファイル名です。
location String ファイルのURIです。
thumbnail_location String ファイルのサムネイル画像のURIです。

RGConstruct

道路規制情報のプロパティconstruction_infoに格納され、この道路規制情報に関連付けられた休工情報(道路工事が中断し、通行可能となる期間についての情報)を表します。

プロパティ名 説明
saturday_break_flag String 土曜休工有無情報です。"0"ならば休工あり、"1"ならば休工なしです。
sunday_break_flag String 日曜休工有無情報です。"0"ならば休工あり、"1"ならば休工なしです。
festival_day_break_flag String 祭日休工有無情報です。"0"ならば休工あり、"1"ならば休工なしです。
break_start_date String 休工の開始日です。日付のフォーマットはyyyy-MM-dd HH:mm:ssです。
break_end_date String 休工の終了日です。日付のフォーマットはyyyy-MM-dd HH:mm:ssです。
oepn_flag String 公開可否情報です。"0"ならば非公開、"1"ならば公開です。
comment String 特記情報です。

Detours

道路規制情報のプロパティdetoursに格納され、この道路規制情報に対して関連付けられた迂回路のライン図形のコレクションを表します。 フォーマットはGeoJSONに準拠したジオメトリコレクションオブジェクト(http://geojson.org/geojson-spec.html#geometrycollection)であり、"type": "LineString"のジオメトリを0個以上含みます。

失敗時のレスポンス

{
  "Success": false,
  "Data": null,
  "Error": <String>
}
プロパティ名 説明
Success Boolean 失敗の場合はfalseです。
Data FeatureCollection 失敗の場合はnullです。
Error String エラー内容を表す文字列が格納されます。

エラーの一覧

発生する可能性があるエラーパターンと対処方法を示します。

エラーメッセージ 対処方法