We use essential storage to run the site (your saved programmes and email preference stay in your browser). Accept optional Google, Microsoft and Meta measurement to help us understand usage and advertising results, or reject to keep non-essential tracking off. Privacy policy.
A JSON API for residency, citizenship and digital-nomad programmes across 150+ countries. Start free; upgrade to Pro for the full dataset and CSV export.
The free endpoint needs no auth. The Pro endpoint takes your key as a bearer token (or the x-api-key header). Passing the key in the URL is not supported — it would leak through logs, history, and referrers.
Authorization: Bearer wcim_your_key_hereGET /api/programmes — returns a sample of up to 100 records.
curl "https://wherecanimove.com/api/programmes?type=golden_visa&limit=5"Example response
[
{
"slug": "portugal-d7-passive-income-visa",
"name": "Portugal D7 (Passive Income) Visa",
"country": "Portugal",
"region": "Europe",
"sub_type": "passive_income_visa",
"cost_display": "From ~$9,200/yr income",
"investment_minimum": null,
"processing_months": 4,
"leads_to_pr": true,
"path_to_citizenship_years": 5,
"last_verified": "2026-05-30"
}
]GET /api/v1/programmes — the complete catalogue, JSON or CSV.
# JSON, all citizenship-by-investment programmes
curl -H "Authorization: Bearer wcim_your_key" \
"https://wherecanimove.com/api/v1/programmes?type=citizenship_by_investment"
# CSV export of everything
curl -H "Authorization: Bearer wcim_your_key" \
"https://wherecanimove.com/api/v1/programmes?format=csv" -o programmes.csvPro responses are wrapped as { "count": n, "data": [...] }. Manage your keys in the Pro console.
| Parameter | Type | Description |
|---|---|---|
| country | string | Filter by country name, e.g. Portugal. |
| type | string | Filter by sub-type (comma-separated), e.g. golden_visa,digital_nomad. |
| region | string | Filter by region, e.g. Europe. |
| search | string | Free-text match on name, country and description. |
| limit | number | Results to return. Free: max 100. Pro: max 1000. |
| format | string | json (default) or csv (Pro only). |
Each programme includes these key fields (and more):
| slug | Unique identifier, used in /programme/{slug}. |
| name | Programme name. |
| country | Country offering the programme. |
| region | World region. |
| sub_type | Programme category (golden_visa, digital_nomad, citizenship_by_investment…). |
| status | active, or closed (closed are excluded by default). |
| cost_display | Human-readable headline cost. |
| investment_minimum | Minimum qualifying amount (USD). |
| processing_months | Typical processing time in months. |
| leads_to_pr | Whether it leads to permanent residency. |
| path_to_citizenship_years | Years to citizenship eligibility, if any. |
| tax_rate | Headline personal tax indicator. |
| visa_free_countries | Visa-free count for the resulting document. |
| last_verified | When the record was last checked against sources. |
Please cache responses and attribute WhereCaniMove with a link when you publish data. The data is provided as-is for guidance and isn't legal advice. For commercial or bulk use, go Pro or get in touch.