---
title: "List Japan Rail Station Nearby"
method: GET
path: "/japan/rail/stations/{station_id}/nearby"
tags: ["japan"]
---

# List Japan Rail Station Nearby

`GET /japan/rail/stations/{station_id}/nearby`

## Request

- Base URL: `https://stardrift.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://stardrift.ai/japan/rail/stations/{station_id}/nearby`
- Auth: none declared

Return JapanPlace rows within `radius_m` of the named station.

Uses `ST_DWithin(geography)` so the radius is a true great-circle
distance, not a degree approximation. Both columns (the station's
`geom` and `japan_places.geom`) are GiST-indexed; the predicate
pushes through to the index when wrapped in `::geography`.

Returns:
    {
        "station": { id, station_name_ja, station_name_en, line_ids,
                     lat, lng },
        "places": [ { id, name, en_name, rank, type, prefecture,
                      lat, lng, tagline, photo_url, distance_m } ]
    }

Photo URL is the first `japan_place_photos.url` if present (matches
the existing /api/japan listing's serialization). `distance_m` is the
great-circle distance in meters, rounded to the nearest meter.

## Path parameters

- `station_id` string, required

## Query parameters

- `radius_m` integer: Search radius in meters; default 5 km.
- `tier` string, nullable: Optionally restrict to a single JTB tier. Only SA and A are accepted today — B-tier is loaded into the DB but excluded from public surfaces (no photo coverage yet, see program/app/japan/types.ts). Loosen this regex when B-tier is officially supported.
- `limit` integer: Max results, sorted by ascending distance.

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/stardrift/apis/stardrift-api.md) - [All operations](https://skmtc.dev/stardrift/apis/stardrift-api/llms.txt) - [OpenAPI document](https://skmtc.dev/stardrift/apis/stardrift-api/revisions/be9ed1e6c38a?raw)
