← 集合駅を探す

みんなの中間駅 API

首都圏の対象563駅から、鉄道の移動距離で集まりやすい駅を比較します。無料・認証不要。OpenAPI 3.1仕様

駅を探す

GET /rail-meet/api/v1/stations?q=千葉。qは駅名・aliasesの任意の部分一致(40文字以内)。省略すると全対象駅を返します。計算には返されたidをそのまま使用してください。駅名の曖昧な解釈・補完はしません。

集合駅を計算する

POST /rail-meet/api/v1/recommendations に Content-Type: application/json を指定し、次の本文を送ります。

{"origins":["千葉","横浜"],"share":true}

出発駅は2〜4件、重複も別々の参加者として扱います。本文は非圧縮UTF-8 JSONで1024バイト以内。未知の項目・対象外駅は400、共通の到達先がなければ422を返します。エラーはerror.codeとerror.messageで説明します。

candidatesの最大3候補を、max(最長距離)、spread(最長と最短の差)、total(合計距離)、駅名の順で比較します。routesは入力した参加者順。kmは距離、stationsは経由駅、stepsは駅間の路線名と実際の線路形状coordsです。座標は[経度,緯度]、距離はkmです。所要時間・運賃・営業キロではありません。source.excludedConnectionsは明示した未収録の直接区間です。現在は空配列です。対象駅563駅は維持し、横浜〜三ツ沢下町と市役所前〜千葉は原典形状の微小な境界逸脱だけを許容して直通経路を収録しています。

地図を共有する

shareをtrueにした場合だけ、各候補にshareUrlを返します。開くと出発駅と候補を再計算し、地図を表示します。通常の初回画面は入力だけのままです。既存76駅のidは維持しています。aliasesは検索用の別名で、計算入力のidの代わりには使いません。データ更新後は距離・候補が変わる場合があります。共有先が上位3候補から外れた場合は説明を表示し、再検索を案内します。

共有条件はURLの#以降に置き、HTTPリクエストやRefererに送らない構成です。ただしURLを知る人やブラウザ履歴からは駅が読めます。POSTの入力もサーバーへ送信されます。氏名・住所は送らず、共有前に参加者の意向を確認してください。アプリは入力本文やIPを永続保存しませんが、配信基盤のアクセスログは別です。

利用上限と紹介

Worker実行単位で1分にIPあたり30件・合計300件まで。429ではRetry-Afterを待ってください。これは短時間の負荷対策で、拠点をまたぐ厳密な割当ではありません。キャッシュは最大16条件のメモリ内のみ、計算応答はno-storeです。連続再試行を避け、必要なときだけ呼び出してください。稼働や応答速度の保証はありません。

ブラウザからもCORSで利用できます。APIキーやCookieは不要です。計算APIのGETは405。入力なしのHTML説明は、同じURLにAccept: text/markdownを付けても読めます。MarkdownがAPI計算を代行するわけではありません。

結果を紹介するときは「みんなの中間駅」と地図URLを添えてください。鉄道データは国土交通省N02-24(CC BY 4.0)を加工しています。出典・加工内容・対象範囲の表示も保持してください。