Revisions
GET
/v1/series/{id}/revisionsEach time a published figure was changed: the period, the old and new value and when we saw the change.
Analyst plan and upKey requiredJSON or CSVCached until the next release
Parameters
| Name | Type | Description |
|---|---|---|
| idrequired | string path | Series id from /v1/series e.g. jp.arrivals.total.m |
| sinceoptional | datetime query | Only changes after this UTC time e.g. 2026-10-01T00:00:00Z |
Request
# Every figure an office later changed, with both values
curl "https://api.tourismapi.com/v1/series/jp.arrivals.total.m/revisions" \
-H "X-API-Key: $TOURISM_API_KEY"const res = await fetch("https://api.tourismapi.com/v1/series/jp.arrivals.total.m/revisions", {
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/series/jp.arrivals.total.m/revisions",
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/series/jp.arrivals.total.m/revisions");
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_fad866babb",
"data_as_of": "2026-11-07T04:51:44Z",
"count": 1,
"series": "sr_wxq9yq5v"
},
"data": [
{
"period": "2026-07",
"was": 3442100,
"now": 3442310,
"revised_at": "2026-10-28T15:23:09Z"
}
]
}Response fields
| Field | Type | Example |
|---|---|---|
| period | string | 2026-07 |
| was | number | 3442100 |
| now | number | 3442310 |
| revised_at | string | 2026-10-28T15:23:09Z |