Developers
Realvian API
Read-only JSON access to the same area data that powers realvian.co.uk — scores, prices, yields and the six liveability dimensions for every area we cover. Free, with an optional API key for a higher rate limit.
Beta status, honestly stated: this API is public and free. Every endpoint is rate-limited — 30 requests/minute for unauthenticated callers, 120/minute with a free API key from your account. The limiter is a single in-memory counter, not a distributed one: it resets on every deploy, and if this service ever runs as more than one instance the limit is enforced per-instance, not globally. Reasonable for where this project is today; don't build infrastructure that assumes today's exact numbers are permanent.
API keys: generate one free from your account page — no billing, no approval step. Send it as Authorization: Bearer rv_... on any request. The raw key is shown once at generation and never stored — if you lose it, revoke it and generate a new one.
Endpoints
Prefer to generate a client, or import into Postman/Insomnia? Full OpenAPI 3.0 spec covering every endpoint below.
/api/v1/areasList every area Realvian covers. Supports optional city and region filters, and format=csv for a spreadsheet-ready download instead of JSON.
curl https://realvian.co.uk/api/v1/areas?city=ManchesterTry it live — this calls the real API, right now, from your browser.
Response
{
"data": [
{
"slug": "didsbury-m20",
"district": "Didsbury",
"city": "Manchester",
"region": "North West",
"outcode": "M20",
"realvianScore": 87,
"investmentScore": 79,
"avgPrice": 412500,
"avgRent": 1450,
"grossYield": 5.2,
"fiveYearGrowth": 18.4,
"dataStatus": "geography-live"
}
],
"meta": { "count": 4, "generatedAt": "2026-08-22T12:00:00.000Z" }
}Or as CSV, for Excel/Sheets
curl -O -J https://realvian.co.uk/api/v1/areas?format=csv/api/v1/areas/{slug}Full detail for a single area, including all six liveability dimensions, editorial summary, and strengths/watchouts. Returns 404 with a JSON error body if the slug doesn't exist.
curl https://realvian.co.uk/api/v1/areas/didsbury-m20/api/v1/reportsList every market report on the site — metadata only (title, description, tags, which areas it covers), not the full article body. Supports optional area and kind filters. Visit the linked slug on realvian.co.uk for the full report.
curl https://realvian.co.uk/api/v1/reports?area=didsbury-m20/api/v1/compareFull detail for two areas side by side in a single request — the same data the public comparison tool uses. Requires both ?a= and ?b= slugs. Returns 400 if either is missing, 404 if either slug doesn't exist.
curl https://realvian.co.uk/api/v1/compare?a=didsbury-m20&b=chorlton-m21Try it live — this calls the real API, right now, from your browser.
/api/v1/areas/batchFull detail for up to 50 specific areas in one request, instead of one call per area. Partial success by design — an unknown slug is reported in meta.notFound rather than failing the whole request.
curl https://realvian.co.uk/api/v1/areas/batch?slugs=didsbury-m20,chorlton-m21meta shape
{ "requested": 2, "found": 2, "notFound": [], "generatedAt": "..." }/api/v1/lookupResolve any UK postcode or outcode to its Realvian area, if we cover it. Falls back to city/region from a neighbouring covered outcode when the exact one isn't in our dataset yet, same logic the listing and watchlist forms use.
curl https://realvian.co.uk/api/v1/lookup?postcode=M20+2RNTry it live — this calls the real API, right now, from your browser.
/api/v1/statusAPI health and honest data-coverage numbers — how many of our areas currently have live liveability dimensions versus live geography only versus fully illustrative data. Useful for monitoring, and for knowing how much of the dataset to trust today.
curl https://realvian.co.uk/api/v1/statusThe dataStatus field
Realvian is upfront on the site about which figures are drawn from live public data sources and which are still illustrative while we build out full coverage — this field carries that same honesty into the API rather than presenting every number with equal confidence.
dimensions-liveThe six liveability dimensions are computed from live public data sources.geography-liveLocation (postcode, coordinates) is real; liveability scores are still illustrative.illustrativeBoth location and scores are illustrative pending live data coverage.
Authentication & rate limits
Every response carries X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers — check these to self-throttle before hitting a 429. An exceeded limit returns 429 with a Retry-After header telling you how many seconds to wait.
curl -H "Authorization: Bearer rv_your_key_here" \
https://realvian.co.uk/api/v1/areasPagination
/api/v1/areas and /api/v1/reports accept limit (default 50, max 100) and offset query params. Every paginated response includes a meta.hasMore boolean — page until it's false rather than guessing from the total.
curl https://realvian.co.uk/api/v1/areas?limit=10&offset=10Usage
- · CORS is open — call these endpoints directly from a browser on any domain.
- · Responses are cached for 60 seconds; don't poll faster than that.
- · Attribution isn't required, but a link back to realvian.co.uk is appreciated.
- · This is informational data, not financial advice — see our AI disclosure for how scores are generated.