GOV.UK API: Get travel advice
Returns current UK government (FCDO) travel warnings, entry requirements for British passport holders, safety, health and emergency information for a country. Summaries are shortened; follow the link for full details.
Unofficial. Not affiliated with or endorsed by GOV.UK.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Country, required
country Destination country or common name, for example Thailand, USA or Turkey.
Thailand
Input as JSON
{ "country": "Thailand"}Output
{ "link": "https://www.gov.uk/foreign-travel-advice/thailand" , "health": "Vaccine recommendations and health risks: At least 8 weeks before your trip: check the latest information on vaccinations and health risks in TravelHealthPro’s Thailand guide see where to get vaccines and whether you have to pay on the NHS travel vaccinations page See what health risks you’ll face i…", "country": "Thailand", "terrorism": "Terrorism: There is a high threat of terrorist attack globally affecting UK interests and British nationals, including from groups and individuals who view the UK and British nationals as targets. Stay aware of your surroundings at all times. UK Counter Terrorism Policing has information and advice …", "date_updated": "2026-10-12", "warning_status": "FCDO advises against all but essential travel to parts of the country. Thailand-Malaysia border: FCDO advises against all but essential travel to parts of the south, near the Thailand-Malaysia border: Pattani Province Yala Province Narathiwat Province The districts of Chana, Thepa, Na Thawi and Saba…", "emergency_numbers": "Emergency services in Thailand: Telephone: 191 (ambulance, fire, police) Ambulance: 1669 Fire: 199 Police: 191 Tourist police: 1155 The Tourist Police have developed a new application called Thailand Tourist Police to facilitate communication between tourists and our services online.", "entry_requirements": "Passport validity requirements: To enter Thailand, your passport must have an ‘expiry date’ at least 6 months after the date you arrive and have at least 1 blank page. Check with your travel provider that your passport and other travel documents meet requirements. Renew your passport if you need to.…", "safety_and_security": "Political situation: The political situation can be unpredictable and has led to periods of civil and political unrest. Avoid protests, political gatherings, demonstrations and marches. Crime: Protecting yourself and your belongings To reduce your personal risk: carry your valuables and cash securel…", "latest_update_summary": "Updated information about visa requirements for travellers entering Thailand by land or air (‘Entry requirements’ page).", "local_laws_and_customs": "Laws and cultural differences: The British Embassy in Bangkok’s video talks about what to be aware of when living or travelling in Thailand: Facebook – visiting Thailand video X – visiting Thailand video Criticising the Thai monarchy Criticising the Thai monarchy (‘lèse-majesté’) is illegal. The law…"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"gov.uk/get_travel_advice","input":{"country":"Thailand"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "gov.uk/get_travel_advice" , "input": { "country": "Thailand" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "gov.uk/get_travel_advice" , "input": { "country": "Thailand" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run gov.uk/get_travel_advice# with {"country":"Thailand"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "country" ], "properties": { "country": { "type": "string", "description": "Destination country or common name, for example Thailand, USA or Turkey." } }}Output schema
{ "type": "object", "required": [ "country", "warning_status", "latest_update_summary", "date_updated", "entry_requirements", "safety_and_security", "terrorism", "local_laws_and_customs", "health", "emergency_numbers", "link" ], "properties": { "link": { "type": "string" }, "health": { "type": [ "string", "null" ] }, "country": { "type": "string" }, "terrorism": { "type": [ "string", "null" ] }, "date_updated": { "type": [ "string", "null" ] }, "warning_status": { "type": "string" }, "emergency_numbers": { "type": [ "string", "null" ] }, "entry_requirements": { "type": [ "string", "null" ] }, "safety_and_security": { "type": [ "string", "null" ] }, "latest_update_summary": { "type": [ "string", "null" ] }, "local_laws_and_customs": { "type": [ "string", "null" ] } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
gov.uk/get_travel_advice- Returns
- warning status, entry requirements, safety, terrorism, local laws, health, emergency numbers, update date, link
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method gov.uk/get_travel_advice with the inputs above.
Ask your agent
- Is it safe to travel to Thailand right now according to UK travel advice?
- What passport validity do British citizens need to enter Turkey?
- Are there any current FCDO warnings for travelling to Egypt?
- What health precautions and emergency numbers should I know before visiting Mexico from the UK?
- Check the latest entry requirements and local laws for Japan for a British passport holder.
See more
All GOV.UK methodsChecks a name against the current UK Sanctions List and returns possible matches in the site's best-match order, with designation details. Results may include entries that only mention the name in their reasons, so check each entry before identifying anyone.
gov.uk/check_sanctionsLists GOV.UK bank holidays for a UK region and year, including substitute days and notes, plus the next upcoming holiday. Years GOV.UK does not publish return an empty list and the published years.
gov.uk/list_bank_holidaysGets CDC traveler vaccines, medicines, the routine vaccine reminder and malaria guidance for a destination country. Recommendations can vary by itinerary and traveler, so read the linked country page for details.
cdc.gov/get_travel_vaccinesLists current CDC Travelers' Health notices, newest first, with destinations, levels, posted dates, travel advice and notice links. Filtering by country also matches destinations named in multi-country notices.
cdc.gov/list_travel_health_noticesChecks a passport holder's visa requirement and permitted stay for a destination on Passport Index. This is guidance; travellers should confirm entry rules with the embassy before travel. Visits to the passport's issuing country are not listed.
passportindex.org/check_visa_requirementLooks up a country's passport on Passport Index and returns its global rank, mobility score, visa requirement counts and optionally every destination's requirement.
passportindex.org/get_passport_rankFinds food businesses by name and town, street or postcode and returns their official food hygiene rating, inspection date and score descriptions. Scottish ratings usually have no component scores.
ratings.food.gov.uk/get_hygiene_ratingFollows the PeopleFirst link on Westminster's residents page and returns the destination address, status, title and first 2,000 characters of main text.
www.westminster.gov.uk/read_people_first_link