---
title: "Retiree and passive-income visa routes, matched to an income or listed per country"
method: GET
path: "/api/retirement-visas.json"
---

# Retiree and passive-income visa routes, matched to an income or listed per country

`GET /api/retirement-visas.json`

## Request

- Base URL: `https://geo-parity.com`
- URL: `https://geo-parity.com/api/retirement-visas.json`
- Auth: one of:
  - none
  - HTTP bearer
  - API key in query parameter `key`

Hand-curated register of retirement, passive-income and deposit routes with thresholds, official page and check date. `income` (+ `currency`, `age`, `savings`) matches; `country` or `countries` lists. Deposit routes are judged only when `savings` is given. For information only; every response says so first.

## Query parameters

- `income` number
- `currency` string
- `age` number
- `savings` number
- `country` string
- `countries` string

## Response `200`

Match groups (qualify, nearMiss, depositRoutes, unpublished, excluded, none), one entry, or comparison rows; attribution names the curated register

## Other responses

- `400`: No parameter (MISSING_PARAMS), a non-positive income or bad age (INVALID_PARAM), or fewer than two countries (TOO_FEW)
- `422`: A country outside the spine (UNKNOWN_COUNTRY) or an unsupported currency (UNKNOWN_CURRENCY)

---

[API](https://skmtc.dev/geo-parity/apis/geo-parity-api.md) · [All operations](https://skmtc.dev/geo-parity/apis/geo-parity-api/llms.txt) · [OpenAPI document](https://skmtc.dev/geo-parity/apis/geo-parity-api/revisions/8ddff47a0806?raw)
