地図と時計をひとまとめにした画面を iframe 1行で埋め込めます。
計算値だけが欲しい場合は JSON の API もあります。
どちらも市区町村ごとに発行するキーで利用します。
発行されたキーを src に付けるだけです。
<iframe src="https://pokapoka-estate.com/embed?key=発行されたキー"
width="100%" height="520" style="border:0"
title="日照シミュレーション"></iframe>
枠の中では、地図上の建物が立体で表示され、時計を回すとその瞬間の影が動きます。 地図をクリックすると、その地点の日照時間が出ます。 高さは 520px 以上を推奨します。
Content-Security-Policy: frame-ancestors)。
URL が変わる予定がある場合は、あらかじめ申請時に含めてください。
すべて GET、応答は JSON(UTF-8)です。キーは
X-API-Key ヘッダか key パラメータで渡します。
curl -H "X-API-Key: 発行されたキー" \
"https://pokapoka-estate.com/api/v1/day?lat=35.1281&lon=136.0980&height=1.5&date=2025-12-22"
| パス | 返すもの |
|---|---|
/api/v1/day |
指定日の日照時間、日照していた区間、時刻ごとの太陽位置と日照の有無 |
/api/v1/year |
月ごとの代表日(各月15日)の日照時間 |
/api/v1/regulation |
日影規制(建築基準法56条の2)の条件で計算した日影時間。参考値 |
/api/v1/buildings |
指定範囲の建物(GeoJSON)。外周と高さ、地盤標高 |
/api/v1/shadowframes |
指定範囲・指定日の時刻ごとの日影ラスタ(PNG)。1日分をまとめて1枚で返す |
/api/v1/cities |
対応している市区町村の一覧。キー不要 |
| 名前 | 既定 | 意味 |
|---|---|---|
lat / lon | — | 緯度・経度(必須) |
height | 1.5 | 地盤面からの高さ(m)。窓の高さを想定 |
date | その年の冬至 | YYYY-MM-DD |
step | 10 | サンプリング間隔(分) |
/api/v1/day){
"city": "25204_omihachiman",
"date": "2025-12-22",
"heightAGL": 1.5,
"groundElevation": 89.82,
"insideBuilding": false,
"sunlitHours": 8.33, // 日が当たっていた時間
"possibleHours": 9.67, // 日の出から日の入りまで
"ratio": 0.8621,
"intervals": [
{ "from": "07:20", "to": "08:30", "minutes": 70 },
{ "from": "09:20", "to": "16:30", "minutes": 430 }
],
"samples": [
{ "t": "07:10", "az": 119.82, "el": 1.26, "sunlit": false }
],
"stepMinutes": 10,
"dataUpdated": "2026-08-29",
"attribution": "3D都市モデル(Project PLATEAU)/国土交通省"
}
dataUpdated(データ更新日)、heightAGL(評価した高さ)、
stepMinutes(時間刻み)、insideBuilding(建物の内側かどうか)を
必ず一緒に返します。条件の分からない数値は、受け手が別の条件のものと混ぜて使ってしまうためです。
画面に出すときも、せめてデータ更新日は添えてください。
| 状態 | error | 意味 |
|---|---|---|
| 401 | missing_api_key | キーが付いていない |
| 401 | invalid_api_key | キーが無効。失効している可能性 |
| 403 | origin_not_allowed | 登録していないサイトから呼ばれた |
| 403 | city_not_allowed | 契約している市区町村の外の座標 |
| 404 | out_of_coverage | 3D都市モデルが未整備で計算できない |
| 429 | rate_limited | 1分あたりの上限を超えた |
403 を返します。要求と違うものを黙って返すことは、
どのような場合でもしません。
「登録したサイトからのみ利用できる」という制限は、ブラウザからの呼び出しに対して効きます。
埋め込み枠は frame-ancestors でブラウザが読み込みを止めるため、迂回できません。
一方で、サーバ間の呼び出しは防げません。Origin ヘッダは
ブラウザが付けるもので、curl などからは自由に名乗れるためです。
ブラウザに埋め込む以上キーも公開されます。
したがって実効的な歯止めは、レート制限と利用状況の記録、そして異常があればキーを失効させる運用です。 キーは秘密ではなく「どのサイトの、どの市区町村向けか」を示す名札だと考えてください。
もとになっている3D都市モデルは CC BY 4.0 で提供されています。 ライセンス上の義務は、こちらから利用者へ転嫁できません。埋め込み枠には出典が含まれていますが、 JSON の API から数値だけを取り出して表示する場合は、次の記載をお願いします。
出典:3D都市モデル(Project PLATEAU)/国土交通省
日影規制の値は参考値であり、建築確認の根拠にはなりません。この旨も併記してください。
審査のうえキーを発行します。現在は手作業のため、数営業日いただきます。