国産Web API Advent Calendar 2018 23日目の記事です.
P2P地震情報で提供しているJSON APIを紹介します.
P2P地震情報 JSON API
概要
JSON API | P2P地震情報 ガラクタおきば
…このAPIは,次の情報をJSON形式で取得することが出来ます.
- 気象庁 地震情報
- 気象庁 津波予報
- 地震感知情報 (P2P地震情報ユーザからの「揺れた!」という情報)
利用方法
https://api.p2pquake.net/v1/human-readable
にアクセスするだけです.
パラメタ limit
(1〜100) で取得件数を制御できます(直近100件.
HTTPレスポンスヘッダにAccess-Control-Allow-Origin: *
を設定しており,どのオリジンからでもアクセスが可能です.
$ curl https://api.p2pquake.net/v1/human-readable?limit=2 | jq
[
{
"_id": {
"$oid": "5c19111af837cf25af9bb6b5"
},
"time": "2018/12/19 00:24:07.215",
"code": 551,
"issue": {
"type": "DetailScale",
"source": "気象庁"
},
"earthquake": {
"time": "19日0時18分",
"maxScale": 20,
"domesticTsunami": "None",
"hypocenter": {
"name": "宮城県沖",
"depth": "50km",
"magnitude": "3.9",
"latitude": "N38.3",
"longitude": "E141.7"
}
},
"points": [
{ "scale": 20, "addr": "石巻市" },
{ "scale": 10, "addr": "東松島市" },
{ "scale": 10, "addr": "大崎市" },
{ "scale": 10, "addr": "女川町" },
{ "scale": 10, "addr": "相馬市" }
]
},
{
"time": "2018/12/19 00:19:02.297",
"code": 5610,
"count": 13,
"regions": {
"東北": 11, "関東": 2
},
"prefs": {
"宮城": 9, "岩手": 1, "福島": 1, "埼玉": 2
},
"areas": {
"宮城北部": 2, "宮城南部": 7, "岩手沿岸南部": 1, "福島中通り": 1, "埼玉南部": 2
}
}
]
レコードの種類は code
キーで識別でき,551
は地震情報,552
は津波予報,5610
は地震感知情報を表します.
細かいフォーマットは JSON API | P2P地震情報 ガラクタおきば をご覧ください.
サンプル
取得結果を一覧表示するRubyスクリプトのサンプルです.
epsp-utils/json_api_reader at master · p2pquake/epsp-utils
$ ./example.rb
地震情報 21日13時13分 震度2 福島県沖(50km, M4.1) 津波の心配なし
地震感知情報 21日13時13分 埼玉(9) 福島(7) 東京(3) 茨城(3) 宮城(2) 千葉(2) 群馬(2) 神奈川(2) 兵庫(1) 北海道(1) 栃木(1)
地震情報 21日6時01分 震度3 胆振地方中東部(30km, M3.5) 津波の心配なし
震源情報 21日6時01分 震度不明 胆振地方中東部(30km, M3.5) 津波の心配なし
震度速報 21日6時01分 震度3 津波有無は調査中
地震感知情報 21日06時01分 北海道(3) 千葉(1) 埼玉(1)
遠地地震 21日2時02分 震度不明 ロシア、コマンドル諸島(-1km, M7.3) 津波の心配なし
地震感知情報 21日02時07分 千葉(1) 静岡(1) 北海道(1)
地震情報 20日18時46分 震度1 岩手県内陸南部(10km, M3.0) 津波の心配なし
地震情報 20日18時12分 震度1 茨城県南部(60km, M3.0) 津波の心配なし
活用事例
知名度のないAPIですが,平均26万アクセス/日の利用があり,そこそこ使われているようです.
ただし,利用報告等は求めていないため,全容は不明です.
ここでは,利用報告を頂いた or 利用されているのを見つけた事例を紹介します.
スマートスピーカ
エディタプラグイン・パッケージ
- haya14busa/eew.vim: 緊急地震速報 on Vim
- syohex/emacs-eew: Japanese Earthquake Early Warning for Emacs
- tgfjt/Sublime-eew
まとめ
地震情報や地震感知情報を取得できるP2P地震情報 JSON APIの紹介でした.
リクエストが30回/分を超えない程度であれば制限はありません,使えそうな場面があれば使ってみてください.