
Cited travel facts for 195 countries: plugs, currency, emergency numbers, holidays, visa pilot.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Optional: 'Bearer ct_live_…' free API key (POST https://citedtravel.com/v1/keys). Without it, static tools work keyless and entry/trip tools ask for an x402 payment (USDC on Base).
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Visa/entry information for a short tourist stay, for a pilot set of passports, from official government sources, with verbatim quotes, official links and a mandatory advisory. Decision support only: never a go/no-go verdict. Returns status (visa_free, visa_free_with_requirements, visa_on_arrival, eta_required, evisa_required, visa_required, unclear), max_stay_days, additional_requirements[], quotes[] (authoritative), official_links, advisory, sources[], confidence, last_verified. One passport, one destination; for a full trip use get_trip_brief, which embeds this per destination. Coverage: pilot passports (the error for others lists them), tourism only. Based on the passport country's official travel advice; the destination's own rules are covered only as far as the official pages quoted in quotes[]. Transit, other visa types and special cases are not covered: point users to official_links, and always show the advisory. Parameters: passport is the nationality of the passport used (dual nationals: one call each); destination is the country entered, not transit stops. Example: {"passport":"GB","destination":"JP"}. Read-only; free API key or x402 per call (https://citedtravel.com/pricing/); errors RFC 9457.
Passport (nationality) country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first.
Destination country; must differ from passport as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first.
Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language.
Trip purpose. Only short tourist stays are covered ("tourism"; "tourism_short_stay" is an accepted alias); anything else returns an error.
Visa/entry information for a short tourist stay, for a pilot set of passports, from official government sources, with verbatim quotes, official links and a mandatory advisory. Decision support only: never a go/no-go verdict. Returns status (visa_free, visa_free_with_requirements, visa_on_arrival, eta_required, evisa_required, visa_required, unclear), max_stay_days, additional_requirements[], quotes[] (authoritative), official_links, advisory, sources[], confidence, last_verified. One passport, one destination; for a full trip use get_trip_brief, which embeds this per destination. Coverage: pilot passports (the error for others lists them), tourism only. Based on the passport country's official travel advice; the destination's own rules are covered only as far as the official pages quoted in quotes[]. Transit, other visa types and special cases are not covered: point users to official_links, and always show the advisory. Parameters: passport is the nationality of the passport used (dual nationals: one call each); destination is the country entered, not transit stops. Example: {"passport":"GB","destination":"JP"}. Read-only; free API key or x402 per call (https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
| purpose | string | Trip purpose. Only short tourist stays are covered ("tourism"; "tourism_short_stay" is an accepted alias); anything else returns an error. |
| passport* | string | Passport (nationality) country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
| destination* | string | Destination country; must differ from passport as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
{
"type": "object",
"required": [
"passport",
"destination"
],
"properties": {
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"purpose": {
"enum": [
"tourism",
"tourism_short_stay"
],
"type": "string",
"default": "tourism",
"examples": [
"tourism"
],
"description": "Trip purpose. Only short tourist stays are covered (\"tourism\"; \"tourism_short_stay\" is an accepted alias); anything else returns an error."
},
"passport": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Passport (nationality) country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
},
"destination": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Destination country; must differ from passport as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
}
}
}Does a traveller need a plug adapter or voltage converter? verdict {adapter: not_needed | needed | depends_on_plug, converter: not_needed | usually_not_needed | needed_for_single_voltage_devices | unknown, plug_fit[], frequency_note, guidance}, computed from cited plug, voltage and frequency facts (inputs[], with sources and confidence; top-level confidence is their lowest). Plug fit is conservative. For raw power facts use get_country_facts; for a whole trip get_trip_brief (includes this verdict per destination). Parameters: home_country is where the devices were bought (their plugs and rating), not nationality; destination is where they will be plugged in. Example: {"home_country":"GB","destination":"US"}. Read-only; keyless (free key or x402 lifts limits: https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
| destination* | string | Destination country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
| home_country* | string | Country where the traveller's devices come from as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
Several cited facts for one country in one call: power, currency, emergency numbers, driving side, this year's public holidays, tipping (data.<category>.<field>; a category without data is {}). Use it for a country overview. For one topic use get_emergency_numbers, get_tipping_norms, get_public_holidays (any dates) or check_power_compatibility (adapter verdict); for a whole trip get_trip_brief; for visas check_entry_requirements. Each fact is cited: sources[] (url, license), last_verified, confidence. Parameters: alpha-2 country codes work best (alpha-3 too; names via resolve_country). Request only the categories you need to keep the answer small. Examples: {"country":"JP"}, {"country":"FRA","categories":["power","currency"]}. Read-only; keyless (free key or x402 lifts limits: https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
| country* | string | Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
| categories | array | Categories to return; omit for all six. |
{
"type": "object",
"required": [
"country"
],
"properties": {
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
},
"categories": {
"type": "array",
"items": {
"enum": [
"power",
"currency",
"emergency",
"driving",
"holidays",
"tipping"
],
"type": "string"
},
"examples": [
[
"power",
"currency"
]
],
"description": "Categories to return; omit for all six."
}
}
}Emergency numbers for one country: data.numbers.value {police, ambulance, fire, general, all_numbers}. A role without its own number is null: then use general, else all_numbers (in 58 countries only all_numbers is filled). Use it when only these numbers are needed; get_country_facts for several facts, get_trip_brief for a whole trip. No data for the country is a not-found error. Each fact is cited: sources[] (url, license), last_verified, confidence. Parameters: country is where the call will be made (the traveller's location, not home); alpha-2 works best. Example: {"country":"JP"}. Read-only; keyless (free key or x402 lifts limits: https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
| country* | string | Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
{
"type": "object",
"required": [
"country"
],
"properties": {
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
}
}
}National public holidays between two dates: data.holidays[] {date, name} by date, plus one citation per year in data.facts[]. Use it to check travel dates for closures and crowds; get_country_facts has this year's list with other facts, get_trip_brief covers a whole trip. Data spans the current year and the next two (outside: empty list plus coverage_note); no regional holidays. Each fact is cited: sources[] (url, license), last_verified, confidence. Parameters: from and to are inclusive: pass the travel dates, or YYYY-01-01 to YYYY-12-31 for a year. Over two years, or to before from, is an error. Example: {"country":"JP","from":"2026-12-28","to":"2027-01-05"}. Read-only; keyless (free key or x402 lifts limits: https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| to* | string | Last day of the range (inclusive), on or after from and at most two years later. Calendar date, YYYY-MM-DD. |
| from* | string | First day of the range (inclusive). Calendar date, YYYY-MM-DD. |
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
| country* | string | Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
Tipping customs for one country: data.norms.value {overall_context, situations {<situation>: {expectation, guidance_type, percent_min, percent_max}}}; percentages only where a source states them. Use it for "should I tip, and how much?"; get_country_facts for several facts, get_trip_brief for a whole trip. Custom, not law: confidence reflects that. Each fact is cited: sources[] (url, license), last_verified, confidence. Parameters: omit situation for all; one situation returns only that (no data gives empty situations, not an error). Examples: {"country":"US"}, {"country":"JP","situation":"taxi"}. Read-only; keyless (free key or x402 lifts limits: https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
| country* | string | Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
| situation | string | Return only this situation. A situation with no data gives an empty situations object (not an error). Omit for all situations. |
{
"type": "object",
"required": [
"country"
],
"properties": {
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
},
"situation": {
"enum": [
"restaurant",
"taxi",
"hotel_staff",
"tour_guides",
"bar"
],
"type": "string",
"examples": [
"taxi"
],
"description": "Return only this situation. A situation with no data gives an empty situations object (not an error). Omit for all situations."
}
}
}Whole-trip brief for 1-5 destinations: per destination, in order, entry (as check_entry_requirements, if passport given), power verdict from home_country, currency, emergency numbers, driving side, tipping and holidays between from and to. Use it to summarise a trip; for one fact use check_entry_requirements, check_power_compatibility, get_emergency_numbers, get_tipping_norms or get_public_holidays, and get_country_facts for one country without dates. No passport: entry null, no advisory. If one destination's entry can't be answered (outside pilot, no data, same country) it is {unavailable: reason} and the rest still returns. power is null at home or without plug data; a category without data is {}. An unknown home or destination code, over 5 destinations or a bad date range fails the call. Each fact is cited: sources[] (url, license), last_verified, confidence. Show the advisory. Parameters: passport = nationality (optional); home_country = where traveller and devices come from; destinations in travel order, home only if it is a stop; from/to = whole trip, inclusive. Example: {"passport":"US","home_country":"US","destinations":["JP","KR"],"from":"2026-12-28","to":"2027-01-05"}. Read-only; free API key or x402, charged per call, not per destination (https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| to* | string | Trip end (inclusive), on or after from and at most two years later. Calendar date, YYYY-MM-DD. |
| from* | string | Trip start (inclusive). Calendar date, YYYY-MM-DD. |
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
Dataset change feed, newest first: data[] {changed_on, fact_id, country, category, change: added | updated | removed, old_value, new_value, source_url}. Use it to refresh caches or alert users when a fact changes, then fetch the current cited value (sources, license, confidence) with the matching tool, e.g. get_country_facts or check_entry_requirements. Entry rows: country is the destination, fact_id is entry:<passport>-><destination>. Parameters: set since to the last changed_on you processed (inclusive: that day repeats). Filter by category and/or country; exactly limit rows means older ones were cut, so raise limit or narrow. Examples: {"since":"2026-10-01"}, {"since":"2026-10-01","category":"entry","country":"JP"}. Read-only; keyless (free key or x402 lifts limits: https://citedtravel.com/pricing/); errors RFC 9457.
| Argument | Type | Description |
|---|---|---|
| limit | integer | string | Maximum rows, newest first. Default 100; values are clamped to 1-500 (numeric strings are accepted). |
| since* | string | Return changes on or after this date. Calendar date, YYYY-MM-DD. |
| country | string | Only changes for this country (for entry facts, the destination) as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
| category | string | Only changes in this category (entry = visa/entry pilot). Omit for all. |
Turns a country name, alias or code (English, Japanese, Chinese) into ISO codes: matches[] {iso2, iso3, name, score}, best first, max 5, empty if none. Call it first when you only have a name: get_country_facts, check_entry_requirements, get_trip_brief and the other tools take ISO codes. Exact, prefix (3+ chars) or substring (4+) match, ignoring case and punctuation; no spelling correction. Names only (CLDR): no sources or confidence. Parameters: pass query as the user wrote it; if nothing matches, retry with the official or local name. lang only localizes the returned names. Examples: {"query":"日本"}, {"query":"South Korea","lang":"ja"}. Read-only; free and keyless, no quota.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language. |
| query* | string | Country name, alias or code, in English, Japanese or Chinese. Case-, space- and punctuation-insensitive (a leading "the" is ignored); matches exactly, by prefix (3+ characters) or by substring (4+ characters); not a spelling corrector. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"query": {
"type": "string",
"examples": [
"Japan",
"日本",
"UK",
"Côte d'Ivoire"
],
"minLength": 1,
"description": "Country name, alias or code, in English, Japanese or Chinese. Case-, space- and punctuation-insensitive (a leading \"the\" is ignored); matches exactly, by prefix (3+ characters) or by substring (4+ characters); not a spelling corrector."
}
}
}{
"type": "object",
"required": [
"home_country",
"destination"
],
"properties": {
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"destination": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Destination country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
},
"home_country": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Country where the traveller's devices come from as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
}
}
}{
"type": "object",
"required": [
"country",
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"examples": [
"2027-01-10"
],
"description": "Last day of the range (inclusive), on or after from and at most two years later. Calendar date, YYYY-MM-DD."
},
"from": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"examples": [
"2026-12-20"
],
"description": "First day of the range (inclusive). Calendar date, YYYY-MM-DD."
},
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
}
}
}| passport | string | Passport (nationality) country as an ISO 3166-1 alpha-2 or alpha-3 code. Optional: omit to skip entry requirements. |
| destinations* | array | Destination countries, in travel order. |
| home_country* | string | Country the traveller starts from; used for the adapter/converter verdict as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first. |
{
"type": "object",
"required": [
"home_country",
"destinations",
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"examples": [
"2027-01-05"
],
"description": "Trip end (inclusive), on or after from and at most two years later. Calendar date, YYYY-MM-DD."
},
"from": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"examples": [
"2026-12-28"
],
"description": "Trip start (inclusive). Calendar date, YYYY-MM-DD."
},
"lang": {
"type": "string",
"default": "en",
"examples": [
"en",
"ja",
"zh-Hans",
"zh-Hant"
],
"description": "Language for localized names (BCP 47). Supported: en, ja, zh-Hans, zh-Hant; aliases such as zh, zh-CN, zh-TW and zh-HK are mapped, and anything else falls back to English. Only names are localized; verbatim official quotes stay in their original language."
},
"passport": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Passport (nationality) country as an ISO 3166-1 alpha-2 or alpha-3 code. Optional: omit to skip entry requirements."
},
"destinations": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Destination country as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
},
"examples": [
[
"JP",
"KR"
]
],
"maxItems": 5,
"minItems": 1,
"description": "Destination countries, in travel order."
},
"home_country": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Country the traveller starts from; used for the adapter/converter verdict as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
}
}
}{
"type": "object",
"required": [
"since"
],
"properties": {
"limit": {
"type": [
"integer",
"string"
],
"default": 100,
"examples": [
50
],
"description": "Maximum rows, newest first. Default 100; values are clamped to 1-500 (numeric strings are accepted)."
},
"since": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"examples": [
"2026-10-01"
],
"description": "Return changes on or after this date. Calendar date, YYYY-MM-DD."
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2,3}$",
"examples": [
"JP",
"GB",
"USA"
],
"description": "Only changes for this country (for entry facts, the destination) as an ISO 3166-1 alpha-2 or alpha-3 code, case-insensitive (e.g. JP, jp or JPN). Names are not accepted: resolve them with resolve_country first."
},
"category": {
"enum": [
"power",
"currency",
"emergency",
"driving",
"holidays",
"tipping",
"entry"
],
"type": "string",
"examples": [
"entry"
],
"description": "Only changes in this category (entry = visa/entry pilot). Omit for all."
}
}
}