Recovery
GET
/v1/stats/recoveryEvery month as a percentage of the same month in 2019 (= 100): the recovery index buyers quote. 53 countries.
Analyst plan and upKey requiredJSON or CSVCached until the next release
Parameters
| Name | Type | Description |
|---|---|---|
| countryrequired | string query | ISO code of a country that carries this statistic (listed at /v1/countries/{iso}) e.g. JP |
| fromoptional | period query | First month to return e.g. 2024-01 |
Request
# Each month against the same month of 2019
curl "https://api.tourismapi.com/v1/stats/recovery?country=JP" \
-H "X-API-Key: $TOURISM_API_KEY"const res = await fetch("https://api.tourismapi.com/v1/stats/recovery?country=JP", {
headers: { "X-API-Key": process.env.TOURISM_API_KEY }
});
if (!res.ok) throw new Error(`Tourism API ${res.status}`);
const { meta, data } = await res.json();
console.log(meta.data_as_of, data);import os, requests
r = requests.get(
"https://api.tourismapi.com/v1/stats/recovery?country=JP",
headers={"X-API-Key": os.environ["TOURISM_API_KEY"]},
timeout=10,
)
r.raise_for_status()
body = r.json()
print(body["meta"]["data_as_of"], body["data"])$ch = curl_init("https://api.tourismapi.com/v1/stats/recovery?country=JP");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["X-API-Key: " . getenv("TOURISM_API_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
print_r($body["data"]);
Example response
{
"meta": {
"request_id": "req_a4d58816ef",
"data_as_of": "2026-10-20T04:48:18Z",
"count": 80,
"country": "JP",
"method": {
"series": "Visitor arrivals to Japan from Total",
"unit": "visitors",
"first": "2003-01",
"last": "2026-08",
"basis": "same month of 2019 = 100"
}
},
"data": [
{
"period": "2020-01",
"index": 98.95
},
{
"period": "2020-02",
"index": 41.67
},
{
"period": "2020-03",
"index": 7.02
}
]
}Response fields
| Field | Type | Example |
|---|---|---|
| period | string | 2020-01 |
| index | number | 98.95 |