From d01bed1f91815995a77b5b14d248f58986cfa134 Mon Sep 17 00:00:00 2001 From: Anna TSOLAKOU Date: Wed, 23 Aug 2023 13:33:10 +0300 Subject: [PATCH] Remove Travel Restrictions v2 --- README.md | 3 - src/main/java/com/amadeus/Amadeus.java | 8 - src/main/java/com/amadeus/DutyOfCare.java | 37 - .../java/com/amadeus/dutyOfCare/Diseases.java | 28 - .../dutyOfCare/diseases/Covid19Report.java | 62 - .../com/amadeus/resources/DiseaseReport.java | 395 --- src/test/java/com/amadeus/NamespaceTest.java | 15 - .../dutyOfCare/diseases/Covid19ReportIT.java | 96 - .../travel_restrictions_v2_response_ok.json | 2189 ----------------- 9 files changed, 2833 deletions(-) delete mode 100644 src/main/java/com/amadeus/DutyOfCare.java delete mode 100644 src/main/java/com/amadeus/dutyOfCare/Diseases.java delete mode 100644 src/main/java/com/amadeus/dutyOfCare/diseases/Covid19Report.java delete mode 100644 src/main/java/com/amadeus/resources/DiseaseReport.java delete mode 100644 src/test/java/com/amadeus/dutyOfCare/diseases/Covid19ReportIT.java delete mode 100644 src/test/resources/__files/travel_restrictions_v2_response_ok.json diff --git a/README.md b/README.md index 57aafd6c..ff7df297 100644 --- a/README.md +++ b/README.md @@ -388,9 +388,6 @@ Destination[] directDestinations = amadeus.airport.directDestinations.get(Params FlightAvailability[] flightAvailabilities = amadeus.shopping.availability.flightAvailabilities.post(body); -// Travel Restrictions v2 GET -DiseaseReport diseaseReport - = amadeus.dutyOfCare.diseases.covid19Report.get(Params.with("countryCode","US")); // Location Score GET ScoredLocation[] scoredLocations diff --git a/src/main/java/com/amadeus/Amadeus.java b/src/main/java/com/amadeus/Amadeus.java index 0e2dbe60..1b6c5ee5 100644 --- a/src/main/java/com/amadeus/Amadeus.java +++ b/src/main/java/com/amadeus/Amadeus.java @@ -90,13 +90,6 @@ public class Amadeus extends HTTPClient { */ public Analytics analytics; - /** - *

- * A namespaced client for the /v1/duty-of-care endpoints. - *

- */ - public DutyOfCare dutyOfCare; - /** *

* A namespaced client for the /v1/location endpoints. @@ -129,7 +122,6 @@ protected Amadeus(Configuration configuration) { this.safety = new Safety(this); this.schedule = new Schedule(this); this.analytics = new Analytics(this); - this.dutyOfCare = new DutyOfCare(this); this.location = new Location(this); this.airline = new Airline(this); this.ordering = new Ordering(this); diff --git a/src/main/java/com/amadeus/DutyOfCare.java b/src/main/java/com/amadeus/DutyOfCare.java deleted file mode 100644 index e75616f5..00000000 --- a/src/main/java/com/amadeus/DutyOfCare.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.amadeus; - -import com.amadeus.dutyofcare.Diseases; - -/** - *

- * A namespaced client for the - * /v1/duty-of-care endpoints. - *

- * - *

- * Access via the Amadeus client object. - *

- * - *
- * Amadeus amadeus = Amadeus.builder("clientId", "secret").build();
- * amadeus.dutyOfCare;
- * - * @hide - */ -public class DutyOfCare { - /** - *

- * A namespaced client for the - * /v1/duty-of-care/diseases endpoints. - *

- */ - public Diseases diseases; - - /** - * Constructor. - * @hide - */ - public DutyOfCare(Amadeus client) { - this.diseases = new Diseases(client); - } -} diff --git a/src/main/java/com/amadeus/dutyOfCare/Diseases.java b/src/main/java/com/amadeus/dutyOfCare/Diseases.java deleted file mode 100644 index eabad62b..00000000 --- a/src/main/java/com/amadeus/dutyOfCare/Diseases.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.amadeus.dutyofcare; - -import com.amadeus.Amadeus; -import com.amadeus.dutyofcare.diseases.Covid19Report; - -/** - *

- * A namespaced client for the - * /v1/duty-of-care/diseases endpoints. - *

- */ -public class Diseases { - /** - *

- * A namespaced client for the - * /v2/duty-of-care/diseases/covid19-area-report endpoints. - *

- */ - public Covid19Report covid19Report; - - /** - * Constructor. - * @hide - */ - public Diseases(Amadeus client) { - this.covid19Report = new Covid19Report(client); - } -} diff --git a/src/main/java/com/amadeus/dutyOfCare/diseases/Covid19Report.java b/src/main/java/com/amadeus/dutyOfCare/diseases/Covid19Report.java deleted file mode 100644 index c25f7c4d..00000000 --- a/src/main/java/com/amadeus/dutyOfCare/diseases/Covid19Report.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.amadeus.dutyofcare.diseases; - -import com.amadeus.Amadeus; -import com.amadeus.Params; -import com.amadeus.Response; -import com.amadeus.exceptions.ResponseException; -import com.amadeus.resources.DiseaseReport; -import com.amadeus.resources.Resource; - -/** - *

- * A namespaced client for the - * /v2/duty-of-care/diseases/covid19-area-report endpoints. - *

- * - *

- * Access via the Amadeus client object. - *

- * - *
- * Amadeus amadeus = Amadeus.builder(API_KEY, API_SECRET).build();
- * amadeus.dutyOfCare.diseases.covid19Report;
- */ -public class Covid19Report { - private Amadeus client; - - /** - * Constructor. - * @hide - */ - public Covid19Report(Amadeus client) { - this.client = client; - } - - /** - *

- * Get up-to-date data on COVID-19 caseloads and travel restrictions - * for a given country, city or region. - *

- * - *
-   * amadeus.dutyOfCare.diseases.covid19Report.get(Params
-   *     .with("countryCode", "US"));
-   * 
- * - * @param params the parameters to send to the API - * @return an API response object - * @throws ResponseException when an exception occurs - */ - public DiseaseReport get(Params params) throws ResponseException { - Response response = client.get("/v2/duty-of-care/diseases/covid19-area-report", params); - return (DiseaseReport) Resource.fromObject(response, DiseaseReport.class); - } - - /** - * Convenience method for calling get without any parameters. - * @see Covid19Report#get() - */ - public DiseaseReport get() throws ResponseException { - return get(null); - } -} diff --git a/src/main/java/com/amadeus/resources/DiseaseReport.java b/src/main/java/com/amadeus/resources/DiseaseReport.java deleted file mode 100644 index 7fb02ca5..00000000 --- a/src/main/java/com/amadeus/resources/DiseaseReport.java +++ /dev/null @@ -1,395 +0,0 @@ -package com.amadeus.resources; - -import com.amadeus.dutyofcare.diseases.Covid19Report; - -import lombok.Getter; -import lombok.ToString; - -/** - * A DiseaseReport object as returned by the Travel Restrictions v2 API. - * @see Covid19Report#get() - */ -@ToString -public class DiseaseReport extends Resource { - private @Getter String type; - private @Getter Area area; - private @Getter SubArea[] subAreas; - private @Getter DatedInformation summary; - private @Getter DataSources dataSources; - private @Getter Links[] relatedArea; - private @Getter AreaVaccinated[] areaVaccinated; - private @Getter DatedInformation hotspots; - private @Getter DiseaseCases diseaseCases; - private @Getter DiseaseInfection diseaseInfection; - private @Getter DatedInformation diseaseRiskLevel; - private @Getter AreaPolicy areaPolicy; - private @Getter AreaAccessRestriction areaAccessRestriction; - private @Getter AreaRestrictions[] areaRestrictions; - - protected DiseaseReport() {} - - @ToString - public class Area { - private @Getter String name; - private @Getter String code; - private @Getter GeoCode geoCode; - private @Getter String areaType; - - protected Area() {} - } - - @ToString - public class GeoCode { - private @Getter String latitude; - private @Getter String longitude; - - protected GeoCode() {} - } - - @ToString - public class SubArea { - private @Getter Area area; - private @Getter DatedInformation summary; - private @Getter DatedInformation diseaseRiskLevel; - private @Getter Links[] relatedArea; - - protected SubArea() {} - } - - @ToString - public class DiseaseInfection { - private @Getter String level; - private @Getter String rate; - private @Getter String infectionMapLink; - private @Getter String trend; - private @Getter String lastUpdate; - private @Getter String text; - - protected DiseaseInfection() {} - } - - @ToString - public class DiseaseCases { - private @Getter int active; - private @Getter int recovered; - private @Getter int deaths; - private @Getter int confirmed; - private @Getter String lastUpdate; - private @Getter String text; - - protected DiseaseCases() {} - } - - @ToString - public class DataSources { - private @Getter String covidDashboardLink; - private @Getter String healthDepartmentSiteLink; - private @Getter String governmentSiteLink; - - protected DataSources() {} - } - - @ToString - public class AreaRestrictions { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String restrictionType; - private @Getter String title; - - protected AreaRestrictions() {} - } - - @ToString - public class AreaAccessRestriction { - private @Getter Transportation transportation; - private @Getter DeclarationDocuments declarationDocuments; - private @Getter Entry entry; - private @Getter TravelTest diseaseTesting; - private @Getter TracingApplication tracingApplication; - private @Getter Mask mask; - private @Getter Exit exit; - private @Getter DatedInformation otherRestriction; - private @Getter TravelVaccination travelVaccination; - private @Getter TravelQuarantine travelQuarantineModality; - private @Getter AreaHealthPass areaHealthPass; - - protected AreaAccessRestriction() {} - } - - @ToString - public class Transportation { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String transportationType; - private @Getter String isBanned; - private @Getter String throughDate; - - protected Transportation() {} - } - - @ToString - public class DeclarationDocuments { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String isRequired; - private @Getter String healthDocumentationLink; - private @Getter String travelDocumentationLink; - private @Getter HealthInsuranceModality[] healthInsurance; - - protected DeclarationDocuments() {} - } - - @ToString - public class HealthInsuranceModality { - private @Getter String isRequired; - private @Getter String minAmount; - private @Getter String currencyCode; - private @Getter String text; - - protected HealthInsuranceModality() {} - } - - @ToString - public class Entry { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String ban; - private @Getter String throughDate; - private @Getter String referenceLink; - private @Getter String exemptions; - private @Getter Area[] bannedArea; - private @Getter Border[] borderBan; - private @Getter String bannedTravellers; - - protected Entry() {} - } - - @ToString - public class Border { - private @Getter String borderType; - private @Getter String status; - - protected Border() {} - } - - @ToString - public class TravelTest { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String isRequired; - private @Getter String requirement; - private @Getter String referenceLink; - private @Getter TravelTestConditionsAndRules[] travelTestConditionsAndRules; - - protected TravelTest() {} - } - - @ToString - public class TravelTestConditionsAndRules { - private @Getter String travelPhases; - private @Getter TravelTestScenario[] scenarios; - - protected TravelTestConditionsAndRules() {} - } - - @ToString - public class TravelTestScenario { - private @Getter String name; - private @Getter TravelTestCondition condition; - private @Getter TravelTestRules rule; - - protected TravelTestScenario() {} - } - - @ToString - public class TravelTestCondition { - private @Getter TravelTestTravellerCondition traveller; - private @Getter TravelTestTripCondition trip; - private @Getter String textualScenario; - - protected TravelTestCondition() {} - } - - @ToString - public class TravelTestTravellerCondition { - private @Getter String whoNeeds; - private @Getter String minimumAge; - - protected TravelTestTravellerCondition() {} - } - - @ToString - public class TravelTestTripCondition { - private @Getter Area[] countries; - private @Getter String destinationCity; - private @Getter String transitCountry; - private @Getter String transitCity; - - protected TravelTestTripCondition() {} - } - - @ToString - public class TravelTestRules { - private @Getter String[] exemptions; - private @Getter TravelTestRequirementsRules[] test; - private @Getter String arrivalTestDays; - - protected TravelTestRules() {} - } - - @ToString - public class TravelTestRequirementsRules { - private @Getter String[] types; - private @Getter Validity validity; - - protected TravelTestRequirementsRules() {} - } - - @ToString - public class Validity { - private @Getter String delay; - private @Getter String referenceDateTime; - - protected Validity() {} - } - - @ToString - public class TracingApplication { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String isRequired; - private @Getter String[] iosUrl; - private @Getter String[] androidUrl; - - protected TracingApplication() {} - } - - @ToString - public class TravelQuarantine { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String eligiblePerson; - private @Getter String quarantineType; - private @Getter int duration; - private @Getter String referenceLink; - private @Getter String mandateList; - private @Getter Area[] quarantineOnArrivalAreas; - - protected TravelQuarantine() {} - } - - @ToString - public class Mask { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String isRequired; - - protected Mask() {} - } - - @ToString - public class Exit { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String specialRequirements; - private @Getter String rulesLink; - private @Getter String isBanned; - - protected Exit() {} - } - - @ToString - public class DatedInformation { - private @Getter String lastUpdate; - private @Getter String text; - - protected DatedInformation() {} - } - - @ToString - public class TravelVaccination { - private @Getter String isRequired; - private @Getter String referenceLink; - private @Getter String[] acceptedCertificates; - private @Getter QualifiedVaccines[] qualifiedVaccines; - private @Getter String details; - private @Getter String minimumAge; - private @Getter String exemptionFromVaccination; - private @Getter VaccinatedTravellers vaccinatedTravellers; - private @Getter String lastUpdate; - private @Getter String text; - - protected TravelVaccination() {} - } - - @ToString - public class QualifiedVaccines { - private @Getter String supportedVaccineProducts; - private @Getter int numberOfDoses; - private @Getter Expiration exemption; - private @Getter String boosterRequired; - private @Getter Expiration boosterExpiration; - private @Getter Validity validity; - - protected QualifiedVaccines() {} - } - - @ToString - public class Expiration { - private @Getter String expiresAfter; - private @Getter String referenceDateTime; - - protected Expiration() {} - } - - @ToString - public class VaccinatedTravellers { - private @Getter String policy; - private @Getter String exemptions; - - protected VaccinatedTravellers() {} - } - - @ToString - public class AreaHealthPass { - private @Getter String isRequired; - private @Getter String applicationGuidance; - private @Getter String obtentionMethods; - private @Getter String referenceLink; - private @Getter String lastUpdate; - private @Getter String text; - - protected AreaHealthPass() {} - } - - @ToString - public class AreaPolicy { - private @Getter String lastUpdate; - private @Getter String text; - private @Getter String status; - private @Getter String startDate; - private @Getter String endDate; - private @Getter String referenceLink; - - protected AreaPolicy() {} - } - - @ToString - public class Links { - private @Getter String href; - private @Getter String[] methods; - private @Getter String rel; - - protected Links() {} - } - - @ToString - public class AreaVaccinated { - private @Getter String vaccinationDoseStatus; - private @Getter double percentage; - private @Getter String lastUpdate; - private @Getter String text; - - protected AreaVaccinated() {} - } -} diff --git a/src/test/java/com/amadeus/NamespaceTest.java b/src/test/java/com/amadeus/NamespaceTest.java index 652263e7..bce0f468 100644 --- a/src/test/java/com/amadeus/NamespaceTest.java +++ b/src/test/java/com/amadeus/NamespaceTest.java @@ -10,7 +10,6 @@ import com.amadeus.booking.FlightOrder; import com.amadeus.booking.FlightOrders; import com.amadeus.booking.HotelBookings; -import com.amadeus.dutyofcare.diseases.Covid19Report; import com.amadeus.ereputation.HotelSentiments; import com.amadeus.exceptions.ResponseException; import com.amadeus.location.analytics.CategoryRatedAreas; @@ -104,8 +103,6 @@ public class NamespaceTest { assertNotNull(client.travel.tripParser); assertNotNull(client.airport.directDestinations); assertNotNull(client.shopping.availability.flightAvailabilities); - assertNotNull(client.dutyOfCare.diseases); - assertNotNull(client.dutyOfCare.diseases.covid19Report); assertNotNull(client.location.analytics); assertNotNull(client.location.analytics.categoryRatedAreas); assertNotNull(client.referenceData.locations.hotels); @@ -559,18 +556,6 @@ public void testDirectDestinations() throws ResponseException { assertEquals(directDestinations.get().length, 2); } - @Test - public void testCovid19AreaReport() throws ResponseException { - // Testing Travel Restrictions - Mockito.when(client.get("/v2/duty-of-care/diseases/covid19-area-report", null)) - .thenReturn(singleResponse); - Mockito.when(client.get("/v2/duty-of-care/diseases/covid19-area-report", params)) - .thenReturn(singleResponse); - Covid19Report covid19Report = new Covid19Report(client); - assertNotNull(covid19Report.get()); - assertNotNull(covid19Report.get(params)); - } - @Test public void testCategoryRatedAreas() throws ResponseException { // Testing Location Score diff --git a/src/test/java/com/amadeus/dutyOfCare/diseases/Covid19ReportIT.java b/src/test/java/com/amadeus/dutyOfCare/diseases/Covid19ReportIT.java deleted file mode 100644 index b090198c..00000000 --- a/src/test/java/com/amadeus/dutyOfCare/diseases/Covid19ReportIT.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.amadeus.dutyofCare.diseases; - -import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; -import static com.github.tomakehurst.wiremock.client.WireMock.get; -import static com.github.tomakehurst.wiremock.client.WireMock.post; -import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; -import static org.assertj.core.api.AssertionsForClassTypes.assertThatThrownBy; -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.amadeus.Amadeus; -import com.amadeus.Params; -import com.amadeus.exceptions.ClientException; -import com.amadeus.exceptions.ResponseException; -import com.amadeus.resources.DiseaseReport; -import com.github.tomakehurst.wiremock.WireMockServer; - -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -// API at https://developers.amadeus.com/self-service/category/covid-19-and-travel-safety/api-doc/travel-restrictions/api-reference -public class Covid19ReportIT { - WireMockServer wireMockServer; - - private Amadeus amadeus; - - /** - * In every test, we will authenticate. - */ - @BeforeEach - public void setup() { - wireMockServer = new WireMockServer(8080); - wireMockServer.start(); - - // API at https://developers.amadeus.com/self-service/apis-docs/guides/authorization-262 - String address = "/v1/security/oauth2/token" - + "?grant_type=client_credentials&client_secret=DEMO&client_id=DEMO"; - wireMockServer.stubFor(post(urlEqualTo(address)) - .willReturn(aResponse().withHeader("Content-Type", "application/json") - .withStatus(200) - .withBodyFile("auth_ok.json"))); - - amadeus = Amadeus - .builder("DEMO", "DEMO") - .setHost("localhost") - .setPort(8080) - .setSsl(false) - .setLogLevel("debug") - .build(); - } - - @AfterEach - public void teardown() { - wireMockServer.stop(); - } - - @Test - public void givenClientWhenCallTravelRestrictionsV2WithParamsThenOK() - throws ResponseException { - - // Given - String address = "/v2/duty-of-care/diseases/covid19-area-report" - + "?countryCode=US&cityCode=NYC&language=EN"; - wireMockServer.stubFor(get(urlEqualTo(address)) - .willReturn(aResponse().withHeader("Content-Type", "application/json") - .withStatus(200) - .withBodyFile("travel_restrictions_v2_response_ok.json"))); - - // When - DiseaseReport result = amadeus.dutyOfCare.diseases.covid19Report.get( - Params.with("countryCode", "US").and("cityCode", "NYC").and("language", "EN") - ); - - // Then - assertNotNull(result); - } - - //TODO Review with the team to upgrade the behaviour. - @Test - public void givenClientWhenCallTravelRestrictionsV2WithoutParamsThenOK() { - - // Given - String address = "/v2/duty-of-care/diseases/covid19-area-report"; - wireMockServer.stubFor(get(urlEqualTo(address)) - .willReturn(aResponse().withHeader("Content-Type", "application/json") - .withStatus(400) - .withBody(""))); - - // When - // Then - assertThatThrownBy(() -> { - amadeus.dutyOfCare.diseases.covid19Report.get(); - }).isInstanceOf(ClientException.class); - } -} - diff --git a/src/test/resources/__files/travel_restrictions_v2_response_ok.json b/src/test/resources/__files/travel_restrictions_v2_response_ok.json deleted file mode 100644 index 0dec5c35..00000000 --- a/src/test/resources/__files/travel_restrictions_v2_response_ok.json +++ /dev/null @@ -1,2189 +0,0 @@ -{ - "meta": { - "links": { - "self": "https://test.api.amadeus.com/v2/diseases/covid19-area-report?cityCode=NYC&countryCode=US&language=EN" - } - }, - "data": { - "area": { - "name": "United States of America", - "code": "US", - "areaType": "Country" - }, - "subAreas": [ - { - "area": { - "name": "New York", - "code": "NYC", - "geoCode": { - "latitude": 40.7306, - "longitude": -73.9865 - }, - "areaType": "City" - }, - "summary": { - "text": "

The counties comprising the New York City metro area (Bronx, Dutchess, Kings, Nassau, New York, Orange, Putnam, Queens, Richmond, Rockland, Suffolk and Westchester) report plateauing numbers of COVID-19 cases through the beginning of May​.

Staff shortages have led to periodic shutdowns of multiple New York City Subway lines.

" - }, - "diseaseRiskLevel": { - "text": "Medium" - }, - "relatedArea": [ - { - "methods": [ - "GET" - ], - "rel": "Child" - } - ] - } - ], - "summary": { - "lastUpdate": "2022-05-19", - "text": "

Authorities have imposed international travel restrictions from late February 2020 – one month after the first cases were detected in the country – and nationwide social distancing guidelines from late March 2020. The country has the highest case and fatality figures in the world. From March 2020, stay-at-home lockdown began to be implemented as the virus spread across the country. All states began reopening as of June 2020 at widely varying paces, before reimposing restrictions from October 2020, and then moving once more to lift most remaining measures as of April 2021 while implementing vaccination campaigns. Approximately 100,000 cases per day were reported nationwide as of late May.

" - }, - "diseaseRiskLevel": { - "text": "Medium" - }, - "diseaseInfection": { - "lastUpdate": "2022-05-22", - "level": "Extreme", - "rate": 431.11, - "infectionMapLink": "https://www.nytimes.com/interactive/2021/us/covid-cases.html", - "trend": "Increase" - }, - "diseaseCases": { - "lastUpdate": "2022-05-31", - "deaths": 1007032, - "confirmed": 84210808 - }, - "hotspots": { - "text": "

Alaska, Colorado, Texas, Kentucky, Virginia, North Carolina, New York, New Jersey, Vermont, New Hampshire, Maine, Connecticut, Rhode Island, Massachusetts

" - }, - "dataSources": { - "covidDashboardLink": "https://data.commercialappeal.com/covid-19-hospital-capacity/", - "governmentSiteLink": "https://www.cdc.gov/coronavirus/2019-ncov/index.html" - }, - "areaRestrictions": [ - { - "lastUpdate": "2022-05-19", - "text": "

American, United, Delta, Southwest, JetBlue, Allegiant, Hawaiian and Alaska Airlines have suspended hundreds of domestic flights due to COVID-19-related staff shortages.

The Centers for Disease Control (CDC) announced that domestic travellers who are fully vaccinated against COVID-19, defined as two weeks having passed since obtaining their final dose of the vaccine, do not need to get tested before or after travel and do not need to self-quarantine. Domestic travellers are recommended to take a viral test 1-3 days before departure and to self-quarantine for 7 days upon arrival. Travellers should get tested again 3-5 days after arrival; if a test is not available or results are delayed, travellers should self-quarantine for a total of 10 days.

", - "restrictionType": "DOMESTIC TRAVEL" - }, - { - "lastUpdate": "2022-05-19", - "text": "

In areas where COVID-19 hospitalisations are high, non-urgent surgeries will be suspended and ambulance services will not be dispatched for non-life threatening emergencies. Long wait times are highly likely due to staff shortages at public and private healthcare providers nationwide.

", - "restrictionType": "OTHER" - } - ], - "areaAccessRestriction": { - "transportation": { - "lastUpdate": "2022-05-19", - "text": "

International flights are subject to suspension on short notice in response to country-specific travel bans.

", - "transportationType": "FLIGHT", - "isBanned": "No" - }, - "declarationDocuments": { - "lastUpdate": "2022-05-19", - "text": "

Travel (PLF) document
All travellers aged two and older must complete an Attestation Form prior to departure. Proof of being fully vaccinated or exempt from this requirement is required for each noncitizen who is a nonimmigrant arriving or transiting by air, as well as via land ports of entry and ferry terminals.

\n

Further details can be found at https://www.cdc.gov/quarantine/fr-proof-negative-test.html

\n", - "isRequired": "Yes", - "travelDocumentationLink": "https://www.cdc.gov/quarantine/pdf/Combined-Passenger-Attestation-Amended-Testing-Order-12-02-2021-p.pdf" - }, - "entry": { - "lastUpdate": "2022-05-26", - "text": "

Non-resident air travellers over the age of two, who have been fully vaccinated against COVID-19 and present a negative COVID-19 test no older than 24 hours or proof of recovery no older than 90 days are allowed entry.

US citizens, nationals and lawful permanent residents are allowed entry regardless of vaccination status provided they provide a negative COVID-19 test result. Travellers via land ports of entry or ferry terminals, excluding US citizens, Lawful Permanent Residents and US nationals, are required to be fully vaccinated but no pre-travel testing is required. Face masks are no longer mandatory for the journey and travellers are required to share their telephone number and email address for contact tracing. An ongoing judicial review may force the the measure to be reimposed.

Embassies and consulates have resumed routine visa services but have broad discretion to determine how to prioritize visa appointments among the range of visa classes as safely as possible, subject to local conditions and restrictions.

", - "ban": "Partial", - "throughDate": "indef", - "referenceLink": "https://www.cdc.gov/coronavirus/2019-ncov/travelers/from-other-countries.html", - "exemptions": "https://www.nafsa.org/regulatory-information/covid-19-restrictions-us-visas-and-entry", - "bannedArea": [ - { - "code": "AD", - "areaType": "country" - }, - { - "code": "AE", - "areaType": "country" - }, - { - "code": "AF", - "areaType": "country" - }, - { - "code": "AG", - "areaType": "country" - }, - { - "code": "AI", - "areaType": "country" - }, - { - "code": "AL", - "areaType": "country" - }, - { - "code": "AM", - "areaType": "country" - }, - { - "code": "AO", - "areaType": "country" - }, - { - "code": "AR", - "areaType": "country" - }, - { - "code": "AT", - "areaType": "country" - }, - { - "code": "AU", - "areaType": "country" - }, - { - "code": "AW", - "areaType": "country" - }, - { - "code": "AZ", - "areaType": "country" - }, - { - "code": "BA", - "areaType": "country" - }, - { - "code": "BB", - "areaType": "country" - }, - { - "code": "BD", - "areaType": "country" - }, - { - "code": "BE", - "areaType": "country" - }, - { - "code": "BF", - "areaType": "country" - }, - { - "code": "BG", - "areaType": "country" - }, - { - "code": "BH", - "areaType": "country" - }, - { - "code": "BI", - "areaType": "country" - }, - { - "code": "BJ", - "areaType": "country" - }, - { - "code": "BL", - "areaType": "country" - }, - { - "code": "BM", - "areaType": "country" - }, - { - "code": "BN", - "areaType": "country" - }, - { - "code": "BO", - "areaType": "country" - }, - { - "code": "BQ", - "areaType": "country" - }, - { - "code": "BR", - "areaType": "country" - }, - { - "code": "BS", - "areaType": "country" - }, - { - "code": "BT", - "areaType": "country" - }, - { - "code": "BW", - "areaType": "country" - }, - { - "code": "BY", - "areaType": "country" - }, - { - "code": "BZ", - "areaType": "country" - }, - { - "code": "CA", - "areaType": "country" - }, - { - "code": "CC", - "areaType": "country" - }, - { - "code": "CD", - "areaType": "country" - }, - { - "code": "CF", - "areaType": "country" - }, - { - "code": "CG", - "areaType": "country" - }, - { - "code": "CH", - "areaType": "country" - }, - { - "code": "CI", - "areaType": "country" - }, - { - "code": "CK", - "areaType": "country" - }, - { - "code": "CL", - "areaType": "country" - }, - { - "code": "CM", - "areaType": "country" - }, - { - "code": "CN", - "areaType": "country" - }, - { - "code": "CO", - "areaType": "country" - }, - { - "code": "CR", - "areaType": "country" - }, - { - "code": "CS", - "areaType": "country" - }, - { - "code": "CU", - "areaType": "country" - }, - { - "code": "CV", - "areaType": "country" - }, - { - "code": "CW", - "areaType": "country" - }, - { - "code": "CY", - "areaType": "country" - }, - { - "code": "CZ", - "areaType": "country" - }, - { - "code": "DE", - "areaType": "country" - }, - { - "code": "DJ", - "areaType": "country" - }, - { - "code": "DK", - "areaType": "country" - }, - { - "code": "DM", - "areaType": "country" - }, - { - "code": "DO", - "areaType": "country" - }, - { - "code": "DZ", - "areaType": "country" - }, - { - "code": "EC", - "areaType": "country" - }, - { - "code": "EE", - "areaType": "country" - }, - { - "code": "EG", - "areaType": "country" - }, - { - "code": "ER", - "areaType": "country" - }, - { - "code": "ES", - "areaType": "country" - }, - { - "code": "ET", - "areaType": "country" - }, - { - "code": "FI", - "areaType": "country" - }, - { - "code": "FJ", - "areaType": "country" - }, - { - "code": "FM", - "areaType": "country" - }, - { - "code": "FO", - "areaType": "country" - }, - { - "code": "FR", - "areaType": "country" - }, - { - "code": "GA", - "areaType": "country" - }, - { - "code": "GB", - "areaType": "country" - }, - { - "code": "GD", - "areaType": "country" - }, - { - "code": "GE", - "areaType": "country" - }, - { - "code": "GF", - "areaType": "country" - }, - { - "code": "GG", - "areaType": "country" - }, - { - "code": "GH", - "areaType": "country" - }, - { - "code": "GI", - "areaType": "country" - }, - { - "code": "GL", - "areaType": "country" - }, - { - "code": "GM", - "areaType": "country" - }, - { - "code": "GN", - "areaType": "country" - }, - { - "code": "GP", - "areaType": "country" - }, - { - "code": "GQ", - "areaType": "country" - }, - { - "code": "GR", - "areaType": "country" - }, - { - "code": "GT", - "areaType": "country" - }, - { - "code": "GW", - "areaType": "country" - }, - { - "code": "GY", - "areaType": "country" - }, - { - "code": "HK", - "areaType": "country" - }, - { - "code": "HN", - "areaType": "country" - }, - { - "code": "HR", - "areaType": "country" - }, - { - "code": "HT", - "areaType": "country" - }, - { - "code": "HU", - "areaType": "country" - }, - { - "code": "ID", - "areaType": "country" - }, - { - "code": "IE", - "areaType": "country" - }, - { - "code": "IL", - "areaType": "country" - }, - { - "code": "IN", - "areaType": "country" - }, - { - "code": "IQ", - "areaType": "country" - }, - { - "code": "IR", - "areaType": "country" - }, - { - "code": "IS", - "areaType": "country" - }, - { - "code": "IT", - "areaType": "country" - }, - { - "code": "JE", - "areaType": "country" - }, - { - "code": "JM", - "areaType": "country" - }, - { - "code": "JO", - "areaType": "country" - }, - { - "code": "JP", - "areaType": "country" - }, - { - "code": "KE", - "areaType": "country" - }, - { - "code": "KG", - "areaType": "country" - }, - { - "code": "KH", - "areaType": "country" - }, - { - "code": "KI", - "areaType": "country" - }, - { - "code": "KM", - "areaType": "country" - }, - { - "code": "KN", - "areaType": "country" - }, - { - "code": "KP", - "areaType": "country" - }, - { - "code": "KR", - "areaType": "country" - }, - { - "code": "KW", - "areaType": "country" - }, - { - "code": "KY", - "areaType": "country" - }, - { - "code": "KZ", - "areaType": "country" - }, - { - "code": "LA", - "areaType": "country" - }, - { - "code": "LB", - "areaType": "country" - }, - { - "code": "LC", - "areaType": "country" - }, - { - "code": "LI", - "areaType": "country" - }, - { - "code": "LK", - "areaType": "country" - }, - { - "code": "LR", - "areaType": "country" - }, - { - "code": "LS", - "areaType": "country" - }, - { - "code": "LT", - "areaType": "country" - }, - { - "code": "LU", - "areaType": "country" - }, - { - "code": "LV", - "areaType": "country" - }, - { - "code": "LY", - "areaType": "country" - }, - { - "code": "MA", - "areaType": "country" - }, - { - "code": "MC", - "areaType": "country" - }, - { - "code": "MD", - "areaType": "country" - }, - { - "code": "ME", - "areaType": "country" - }, - { - "code": "MF", - "areaType": "country" - }, - { - "code": "MG", - "areaType": "country" - }, - { - "code": "MH", - "areaType": "country" - }, - { - "code": "MK", - "areaType": "country" - }, - { - "code": "ML", - "areaType": "country" - }, - { - "code": "MM", - "areaType": "country" - }, - { - "code": "MN", - "areaType": "country" - }, - { - "code": "MO", - "areaType": "country" - }, - { - "code": "MQ", - "areaType": "country" - }, - { - "code": "MR", - "areaType": "country" - }, - { - "code": "MS", - "areaType": "country" - }, - { - "code": "MT", - "areaType": "country" - }, - { - "code": "MU", - "areaType": "country" - }, - { - "code": "MV", - "areaType": "country" - }, - { - "code": "MW", - "areaType": "country" - }, - { - "code": "MX", - "areaType": "country" - }, - { - "code": "MY", - "areaType": "country" - }, - { - "code": "MZ", - "areaType": "country" - }, - { - "code": "NA", - "areaType": "country" - }, - { - "code": "NC", - "areaType": "country" - }, - { - "code": "NE", - "areaType": "country" - }, - { - "code": "NG", - "areaType": "country" - }, - { - "code": "NI", - "areaType": "country" - }, - { - "code": "NL", - "areaType": "country" - }, - { - "code": "NO", - "areaType": "country" - }, - { - "code": "NP", - "areaType": "country" - }, - { - "code": "NR", - "areaType": "country" - }, - { - "code": "NZ", - "areaType": "country" - }, - { - "code": "OM", - "areaType": "country" - }, - { - "code": "PA", - "areaType": "country" - }, - { - "code": "PE", - "areaType": "country" - }, - { - "code": "PF", - "areaType": "country" - }, - { - "code": "PG", - "areaType": "country" - }, - { - "code": "PH", - "areaType": "country" - }, - { - "code": "PK", - "areaType": "country" - }, - { - "code": "PL", - "areaType": "country" - }, - { - "code": "PS", - "areaType": "country" - }, - { - "code": "PT", - "areaType": "country" - }, - { - "code": "PW", - "areaType": "country" - }, - { - "code": "PY", - "areaType": "country" - }, - { - "code": "QA", - "areaType": "country" - }, - { - "code": "RE", - "areaType": "country" - }, - { - "code": "RO", - "areaType": "country" - }, - { - "code": "RS", - "areaType": "country" - }, - { - "code": "RU", - "areaType": "country" - }, - { - "code": "RW", - "areaType": "country" - }, - { - "code": "SA", - "areaType": "country" - }, - { - "code": "SB", - "areaType": "country" - }, - { - "code": "SC", - "areaType": "country" - }, - { - "code": "SD", - "areaType": "country" - }, - { - "code": "SE", - "areaType": "country" - }, - { - "code": "SG", - "areaType": "country" - }, - { - "code": "SI", - "areaType": "country" - }, - { - "code": "SJ", - "areaType": "country" - }, - { - "code": "SK", - "areaType": "country" - }, - { - "code": "SL", - "areaType": "country" - }, - { - "code": "SM", - "areaType": "country" - }, - { - "code": "SN", - "areaType": "country" - }, - { - "code": "SO", - "areaType": "country" - }, - { - "code": "SR", - "areaType": "country" - }, - { - "code": "SS", - "areaType": "country" - }, - { - "code": "ST", - "areaType": "country" - }, - { - "code": "SV", - "areaType": "country" - }, - { - "code": "SX", - "areaType": "country" - }, - { - "code": "SY", - "areaType": "country" - }, - { - "code": "SZ", - "areaType": "country" - }, - { - "code": "TC", - "areaType": "country" - }, - { - "code": "TD", - "areaType": "country" - }, - { - "code": "TG", - "areaType": "country" - }, - { - "code": "TH", - "areaType": "country" - }, - { - "code": "TJ", - "areaType": "country" - }, - { - "code": "TL", - "areaType": "country" - }, - { - "code": "TM", - "areaType": "country" - }, - { - "code": "TN", - "areaType": "country" - }, - { - "code": "TO", - "areaType": "country" - }, - { - "code": "TR", - "areaType": "country" - }, - { - "code": "TT", - "areaType": "country" - }, - { - "code": "TV", - "areaType": "country" - }, - { - "code": "TW", - "areaType": "country" - }, - { - "code": "TZ", - "areaType": "country" - }, - { - "code": "UA", - "areaType": "country" - }, - { - "code": "UG", - "areaType": "country" - }, - { - "code": "UY", - "areaType": "country" - }, - { - "code": "UZ", - "areaType": "country" - }, - { - "code": "VC", - "areaType": "country" - }, - { - "code": "VE", - "areaType": "country" - }, - { - "code": "VG", - "areaType": "country" - }, - { - "code": "VN", - "areaType": "country" - }, - { - "code": "VU", - "areaType": "country" - }, - { - "code": "WF", - "areaType": "country" - }, - { - "code": "WS", - "areaType": "country" - }, - { - "code": "YE", - "areaType": "country" - }, - { - "code": "ZA", - "areaType": "country" - }, - { - "code": "ZM", - "areaType": "country" - }, - { - "code": "ZW", - "areaType": "country" - } - ], - "borderBan": [ - { - "borderType": "maritimeBorderBan", - "status": "Partially Open" - }, - { - "borderType": "landBorderBan", - "status": "Partially Open" - } - ] - }, - "travelTest": { - "lastUpdate": "2022-05-19", - "isRequired": "Yes", - "requirement": "Mandatory", - "referenceLink": "https://www.cdc.gov/coronavirus/2019-ncov/travelers/testing-international-air-travelers.html#:~:text=On%20January%2012%2C%202021%2C%20CDC,airline%20before%20boarding%20the%20flight.", - "travelTestConditionsAndRules": [ - { - "travelPhases": "BEFORE_TRAVEL", - "scenarios": [ - { - "name": "Default ", - "condition": { - "traveller": { - "whoNeeds": "All travellers from...", - "minimumAge": "2" - }, - "trip": { - "countries": [ - { - "code": "AD", - "areaType": "country" - }, - { - "code": "AE", - "areaType": "country" - }, - { - "code": "AF", - "areaType": "country" - }, - { - "code": "AG", - "areaType": "country" - }, - { - "code": "AI", - "areaType": "country" - }, - { - "code": "AL", - "areaType": "country" - }, - { - "code": "AM", - "areaType": "country" - }, - { - "code": "AO", - "areaType": "country" - }, - { - "code": "AR", - "areaType": "country" - }, - { - "code": "AT", - "areaType": "country" - }, - { - "code": "AU", - "areaType": "country" - }, - { - "code": "AW", - "areaType": "country" - }, - { - "code": "AZ", - "areaType": "country" - }, - { - "code": "BA", - "areaType": "country" - }, - { - "code": "BB", - "areaType": "country" - }, - { - "code": "BD", - "areaType": "country" - }, - { - "code": "BE", - "areaType": "country" - }, - { - "code": "BF", - "areaType": "country" - }, - { - "code": "BG", - "areaType": "country" - }, - { - "code": "BH", - "areaType": "country" - }, - { - "code": "BI", - "areaType": "country" - }, - { - "code": "BJ", - "areaType": "country" - }, - { - "code": "BL", - "areaType": "country" - }, - { - "code": "BM", - "areaType": "country" - }, - { - "code": "BN", - "areaType": "country" - }, - { - "code": "BO", - "areaType": "country" - }, - { - "code": "BQ", - "areaType": "country" - }, - { - "code": "BR", - "areaType": "country" - }, - { - "code": "BS", - "areaType": "country" - }, - { - "code": "BT", - "areaType": "country" - }, - { - "code": "BW", - "areaType": "country" - }, - { - "code": "BY", - "areaType": "country" - }, - { - "code": "BZ", - "areaType": "country" - }, - { - "code": "CA", - "areaType": "country" - }, - { - "code": "CC", - "areaType": "country" - }, - { - "code": "CD", - "areaType": "country" - }, - { - "code": "CF", - "areaType": "country" - }, - { - "code": "CG", - "areaType": "country" - }, - { - "code": "CH", - "areaType": "country" - }, - { - "code": "CI", - "areaType": "country" - }, - { - "code": "CK", - "areaType": "country" - }, - { - "code": "CL", - "areaType": "country" - }, - { - "code": "CM", - "areaType": "country" - }, - { - "code": "CN", - "areaType": "country" - }, - { - "code": "CO", - "areaType": "country" - }, - { - "code": "CR", - "areaType": "country" - }, - { - "code": "CS", - "areaType": "country" - }, - { - "code": "CU", - "areaType": "country" - }, - { - "code": "CV", - "areaType": "country" - }, - { - "code": "CW", - "areaType": "country" - }, - { - "code": "CY", - "areaType": "country" - }, - { - "code": "CZ", - "areaType": "country" - }, - { - "code": "DE", - "areaType": "country" - }, - { - "code": "DJ", - "areaType": "country" - }, - { - "code": "DK", - "areaType": "country" - }, - { - "code": "DM", - "areaType": "country" - }, - { - "code": "DO", - "areaType": "country" - }, - { - "code": "DZ", - "areaType": "country" - }, - { - "code": "EC", - "areaType": "country" - }, - { - "code": "EE", - "areaType": "country" - }, - { - "code": "EG", - "areaType": "country" - }, - { - "code": "ER", - "areaType": "country" - }, - { - "code": "ES", - "areaType": "country" - }, - { - "code": "ET", - "areaType": "country" - }, - { - "code": "FI", - "areaType": "country" - }, - { - "code": "FJ", - "areaType": "country" - }, - { - "code": "FM", - "areaType": "country" - }, - { - "code": "FO", - "areaType": "country" - }, - { - "code": "FR", - "areaType": "country" - }, - { - "code": "GA", - "areaType": "country" - }, - { - "code": "GB", - "areaType": "country" - }, - { - "code": "GD", - "areaType": "country" - }, - { - "code": "GE", - "areaType": "country" - }, - { - "code": "GF", - "areaType": "country" - }, - { - "code": "GG", - "areaType": "country" - }, - { - "code": "GH", - "areaType": "country" - }, - { - "code": "GI", - "areaType": "country" - }, - { - "code": "GL", - "areaType": "country" - }, - { - "code": "GM", - "areaType": "country" - }, - { - "code": "GN", - "areaType": "country" - }, - { - "code": "GP", - "areaType": "country" - }, - { - "code": "GQ", - "areaType": "country" - }, - { - "code": "GR", - "areaType": "country" - }, - { - "code": "GT", - "areaType": "country" - }, - { - "code": "GW", - "areaType": "country" - }, - { - "code": "GY", - "areaType": "country" - }, - { - "code": "HK", - "areaType": "country" - }, - { - "code": "HN", - "areaType": "country" - }, - { - "code": "HR", - "areaType": "country" - }, - { - "code": "HT", - "areaType": "country" - }, - { - "code": "HU", - "areaType": "country" - }, - { - "code": "ID", - "areaType": "country" - }, - { - "code": "IE", - "areaType": "country" - }, - { - "code": "IL", - "areaType": "country" - }, - { - "code": "IN", - "areaType": "country" - }, - { - "code": "IQ", - "areaType": "country" - }, - { - "code": "IR", - "areaType": "country" - }, - { - "code": "IS", - "areaType": "country" - }, - { - "code": "IT", - "areaType": "country" - }, - { - "code": "JE", - "areaType": "country" - }, - { - "code": "JM", - "areaType": "country" - }, - { - "code": "JO", - "areaType": "country" - }, - { - "code": "JP", - "areaType": "country" - }, - { - "code": "KE", - "areaType": "country" - }, - { - "code": "KG", - "areaType": "country" - }, - { - "code": "KH", - "areaType": "country" - }, - { - "code": "KI", - "areaType": "country" - }, - { - "code": "KM", - "areaType": "country" - }, - { - "code": "KN", - "areaType": "country" - }, - { - "code": "KP", - "areaType": "country" - }, - { - "code": "KR", - "areaType": "country" - }, - { - "code": "KW", - "areaType": "country" - }, - { - "code": "KY", - "areaType": "country" - }, - { - "code": "KZ", - "areaType": "country" - }, - { - "code": "LA", - "areaType": "country" - }, - { - "code": "LB", - "areaType": "country" - }, - { - "code": "LC", - "areaType": "country" - }, - { - "code": "LI", - "areaType": "country" - }, - { - "code": "LK", - "areaType": "country" - }, - { - "code": "LR", - "areaType": "country" - }, - { - "code": "LS", - "areaType": "country" - }, - { - "code": "LT", - "areaType": "country" - }, - { - "code": "LU", - "areaType": "country" - }, - { - "code": "LV", - "areaType": "country" - }, - { - "code": "LY", - "areaType": "country" - }, - { - "code": "MA", - "areaType": "country" - }, - { - "code": "MC", - "areaType": "country" - }, - { - "code": "MD", - "areaType": "country" - }, - { - "code": "ME", - "areaType": "country" - }, - { - "code": "MF", - "areaType": "country" - }, - { - "code": "MG", - "areaType": "country" - }, - { - "code": "MH", - "areaType": "country" - }, - { - "code": "MK", - "areaType": "country" - }, - { - "code": "ML", - "areaType": "country" - }, - { - "code": "MM", - "areaType": "country" - }, - { - "code": "MN", - "areaType": "country" - }, - { - "code": "MO", - "areaType": "country" - }, - { - "code": "MQ", - "areaType": "country" - }, - { - "code": "MR", - "areaType": "country" - }, - { - "code": "MS", - "areaType": "country" - }, - { - "code": "MT", - "areaType": "country" - }, - { - "code": "MU", - "areaType": "country" - }, - { - "code": "MV", - "areaType": "country" - }, - { - "code": "MW", - "areaType": "country" - }, - { - "code": "MX", - "areaType": "country" - }, - { - "code": "MY", - "areaType": "country" - }, - { - "code": "MZ", - "areaType": "country" - }, - { - "code": "NA", - "areaType": "country" - }, - { - "code": "NC", - "areaType": "country" - }, - { - "code": "NE", - "areaType": "country" - }, - { - "code": "NG", - "areaType": "country" - }, - { - "code": "NI", - "areaType": "country" - }, - { - "code": "NL", - "areaType": "country" - }, - { - "code": "NO", - "areaType": "country" - }, - { - "code": "NP", - "areaType": "country" - }, - { - "code": "NR", - "areaType": "country" - }, - { - "code": "NZ", - "areaType": "country" - }, - { - "code": "OM", - "areaType": "country" - }, - { - "code": "PA", - "areaType": "country" - }, - { - "code": "PE", - "areaType": "country" - }, - { - "code": "PF", - "areaType": "country" - }, - { - "code": "PG", - "areaType": "country" - }, - { - "code": "PH", - "areaType": "country" - }, - { - "code": "PK", - "areaType": "country" - }, - { - "code": "PL", - "areaType": "country" - }, - { - "code": "PS", - "areaType": "country" - }, - { - "code": "PT", - "areaType": "country" - }, - { - "code": "PW", - "areaType": "country" - }, - { - "code": "PY", - "areaType": "country" - }, - { - "code": "QA", - "areaType": "country" - }, - { - "code": "RE", - "areaType": "country" - }, - { - "code": "RO", - "areaType": "country" - }, - { - "code": "RS", - "areaType": "country" - }, - { - "code": "RU", - "areaType": "country" - }, - { - "code": "RW", - "areaType": "country" - }, - { - "code": "SA", - "areaType": "country" - }, - { - "code": "SB", - "areaType": "country" - }, - { - "code": "SC", - "areaType": "country" - }, - { - "code": "SD", - "areaType": "country" - }, - { - "code": "SE", - "areaType": "country" - }, - { - "code": "SG", - "areaType": "country" - }, - { - "code": "SI", - "areaType": "country" - }, - { - "code": "SJ", - "areaType": "country" - }, - { - "code": "SK", - "areaType": "country" - }, - { - "code": "SL", - "areaType": "country" - }, - { - "code": "SM", - "areaType": "country" - }, - { - "code": "SN", - "areaType": "country" - }, - { - "code": "SO", - "areaType": "country" - }, - { - "code": "SR", - "areaType": "country" - }, - { - "code": "SS", - "areaType": "country" - }, - { - "code": "ST", - "areaType": "country" - }, - { - "code": "SV", - "areaType": "country" - }, - { - "code": "SX", - "areaType": "country" - }, - { - "code": "SY", - "areaType": "country" - }, - { - "code": "SZ", - "areaType": "country" - }, - { - "code": "TC", - "areaType": "country" - }, - { - "code": "TD", - "areaType": "country" - }, - { - "code": "TG", - "areaType": "country" - }, - { - "code": "TH", - "areaType": "country" - }, - { - "code": "TJ", - "areaType": "country" - }, - { - "code": "TL", - "areaType": "country" - }, - { - "code": "TM", - "areaType": "country" - }, - { - "code": "TN", - "areaType": "country" - }, - { - "code": "TO", - "areaType": "country" - }, - { - "code": "TR", - "areaType": "country" - }, - { - "code": "TT", - "areaType": "country" - }, - { - "code": "TV", - "areaType": "country" - }, - { - "code": "TW", - "areaType": "country" - }, - { - "code": "TZ", - "areaType": "country" - }, - { - "code": "UA", - "areaType": "country" - }, - { - "code": "UG", - "areaType": "country" - }, - { - "code": "UY", - "areaType": "country" - }, - { - "code": "UZ", - "areaType": "country" - }, - { - "code": "VC", - "areaType": "country" - }, - { - "code": "VE", - "areaType": "country" - }, - { - "code": "VG", - "areaType": "country" - }, - { - "code": "VN", - "areaType": "country" - }, - { - "code": "VU", - "areaType": "country" - }, - { - "code": "WF", - "areaType": "country" - }, - { - "code": "WS", - "areaType": "country" - }, - { - "code": "YE", - "areaType": "country" - }, - { - "code": "ZA", - "areaType": "country" - }, - { - "code": "ZM", - "areaType": "country" - }, - { - "code": "ZW", - "areaType": "country" - } - ] - }, - "textualScenario": "

All passengers on inbound international flights, excluding from American Samoa, Guam and the Northern Marianas Islands, Puerto Rico and the US Virgin Islands, must present a negative COVID-19 test result not older than one day or medical documentation confirming that the traveller has contracted and recovered from COVID-19 in the past 90 days before boarding a flight to the US. An at-home NAAT or antigen SARS-CoV-2 viral test authorised by the Food and Drug Administration (FDA) may be used for this requirement. Officials have imposed a one-day validity period for testing as a more flexible option than a strict 24 hours before departure time, meaning that a negative test obtained at any time on the day prior to travel will be valid.

\n

Foreign passengers must be fully vaccinated to enter the US.

\n

Children between the ages of 2 and 17 travelling with fully vaccinated parents or guardians are also subject to pre-departure testing requirements.

\n

Flight crews, maritime crews with valid visas, diplomats, military personnel and urgent humanitarian or medical cases, including travellers unable to procure a pre-departure test at their point of embarkation, are exempt. Fully vaccinated travellers via land ports of entry and ferry terminals are also exempt. A list of exemptions to testing is available at https://www.cdc.gov/quarantine/pdf/Global-Airline-Testing-Order-RPWSigned-Encrypted-p.pdf.

\n" - }, - "rule": { - "exemptions": [ - "Aircrew", - "Diplomatic", - "Disability", - "Humanitarian", - "Medical", - "Military", - "Urgent", - "Seamen" - ], - "test": [ - { - "types": [ - "PCR", - "Antigen", - "NAAT" - ], - "validity": { - "delay": "24", - "referenceDateTime": "Departure" - } - } - ] - } - } - ] - }, - { - "travelPhases": "IN_TRANSIT", - "scenarios": [ - { - "name": "Transit air passengers", - "condition": { - "traveller": { - "whoNeeds": "All travellers", - "minimumAge": "2" - }, - "trip": {}, - "textualScenario": "

All transit passengers on inbound international flights over the age of two must present a negative COVID-19 test result not older than 24 hours or medical documentation confirming that the traveller has contracted and recovered from COVID-19 in the past 90 days before boarding a flight to the US. Travellers arriving from American Samoa, Guam and the Northern Marianas Islands, Puerto Rico and the US Virgin Islands are exempt. An at-home NAAT or antigen SARS-CoV-2 viral test authorised by the Food and Drug Administration (FDA) may be used for this requirement. Officials have imposed a one-day validity period for testing as a more flexible option than a strict 24 hours before departure time, meaning that a negative test obtained at any time on the day prior to travel will be valid.

\n" - }, - "rule": { - "exemptions": [ - "Aircrew", - "Diplomatic", - "Disability", - "Medical", - "Military", - "Seamen", - "Urgent", - "Humanitarian" - ], - "test": [ - { - "types": [ - "PCR", - "Antigen", - "NAAT" - ], - "validity": { - "delay": "24", - "referenceDateTime": "Departure" - } - } - ] - } - } - ] - } - ] - }, - "tracingApplication": { - "lastUpdate": "2022-05-19", - "isRequired": "No" - }, - "masks": { - "lastUpdate": "2022-05-19", - "text": "

Some states and territories require residents to wear masks in indoor public spaces. Violators may be subject to fines and be denied entry to businesses and use of public transport. Most states and territories have voluntary measures or measures restricted to specific venues and municipalities.

Mask mandates vary widely and are not consistently enforced below the federal level. A mandate requiring travellers to wear a mask on inter-state transport, including at airports and onboard flights, trains, planes, intercity buses and ferries, was suspended on 18 April pending a judical review of its constitutionality. The rule was in place until 3 May before its suspension. The Centers for Disease Control and Prevention (CDC) continues to recommend all travellers wear masks on airplanes, trains, buses and all other means of public transport.

", - "isRequired": "Recommended" - }, - "exit": { - "lastUpdate": "2022-05-19", - "text": "

There are no exit restrictions though international travel to high-COVID-19 risk destinations is strongly discouraged.

", - "specialRequirements": "No", - "referenceLink": "https://travel.state.gov/content/travel/en/traveladvisories/traveladvisories.html/", - "isBanned": "No" - }, - "otherRestrictions": {}, - "travelVaccination": { - "lastUpdate": "2022-05-24", - "isRequired": "Yes", - "referenceLink": "https://www.cdc.gov/coronavirus/2019-ncov/travelers/proof-of-vaccination.html#covid-vaccines", - "acceptedCertificates": [ - "Paper Certificate", - " EU Digital COVID Certificate", - " NHS Covid Pass", - " CDC Covid Vaccination Card", - " Vietnam certificate" - ], - "qualifiedVaccines": [ - { - "supportedVaccineProducts": "Pfizer", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "AstraZeneca (Vaxzevria)", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Vaxevria (South Korea)", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Covishield (India)", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Johnson & Johnson", - "numberOfDoses": 1, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Sinopharm (Beijing)", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "CoronaVac", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Moderna", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "CanSinoBIO", - "numberOfDoses": 1, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Covaxin", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Nuvaxovid (Novavax)", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Covovax (Novavax)", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Covifenz", - "numberOfDoses": 2, - "expiration": { - "expiresAfter": "14" - }, - "boosterRequired": "No" - }, - { - "supportedVaccineProducts": "Immunity through previous infection", - "validity": { - "delay": "3" - } - } - ], - "details": "

Non-resident inbound travellers over the age of 18 on non-essential business must be fully vaccinated against COVID-19 with vaccines approved by the US Food and Drug Administration (FDA) or World Health Organization (WHO).

Travellers are considered fully vaccinated 14 days after receiving a single-vaccine dose, a second dose in a two-dose series, a full series of an accepted vaccine in a clinical trial (not placebo) or a second dose of any mixed combination of vaccines administered at least 17 days apart. Booster doses are not needed to meet international travel vaccination requirements.

Travellers who recently recovered are exempt from before-travel testing requirements. In addition to a positive test result (no older than 90 days), they must present a letter from a licensed healthcare provider or a public health official as proof of past infection.

Travellers on non-tourist visas (excludes B-1 and B-2) arriving from approximately 40 listed countries where less than 10 percent of the population is vaccinated due to the unavailability of vaccines will be permitted entry as humanitarian cases. The list is updated every 90 days at https://www.cdc.gov/quarantine/order-safe-travel/technical-instructions.html.

", - "minimumAge": 18, - "vaccinatedTravellers": { - "policy": "Yes", - "exemptions": "Entry Ban, Quarantine" - } - }, - "travelQuarantineModality": { - "lastUpdate": "2022-05-19", - "text": "

Travellers who are not fully vaccinated but are allowed entry by air through an exception are required to self-quarantine for seven days upon arrival. The list of exceptions can be consulted here. Travellers who have recovered from COVID-19 in the past 90 days are exempt.

\n

Travellers who have not completed the minimum vaccination course, as well as travellers who have not received a booster shot, are recommended to self-quarantine for five days upon arrival.

\n", - "eligiblePerson": "Some travellers", - "quarantineType": "Self", - "duration": 7, - "referenceLink": "https://www.cdc.gov/coronavirus/2019-ncov/travelers/noncitizens-US-air-travel.html#anchor_1634928804881" - }, - "areaHealthPass": { - "lastUpdate": "2022-05-19", - "isRequired": "No", - "applicationGuidance": "

There is no national health pass requirement.

Many major cities have implemented health pass systems at event venues and other businesses. Municipalities and counties can require a health pass for entry to some public places, including hospitality establishments, fitness centres, sporting events, personal care businesses, long-term care facilities and cultural and entertainment venues.

", - "obtentionMethods": "

Travellers may present a Centers for Disease Control (CDC) vaccine card or an eletronic copy of their vaccination record.

", - "referenceLink": "https://www.cdc.gov/coronavirus/2019-ncov/vaccines/safety/register-for-v-safe.html" - } - }, - "areaPolicy": { - "lastUpdate": "2022-05-19", - "text": "

Limited federal policies for quarantine and testing are in effect nationwide. Most policy decisions are implemented at the state, county and municipal level.

", - "status": "Distancing", - "startDate": "2020-03-16", - "endDate": "indef", - "referenceLink": "https://www.covid.gov/" - }, - "relatedArea": [ - { - "methods": [ - "GET" - ], - "rel": "Parent" - } - ], - "areaVaccinated": [ - { - "lastUpdate": "2022-05-20", - "vaccinationDoseStatus": "oneDose", - "percentage": 78.876 - }, - { - "lastUpdate": "2022-05-26", - "vaccinationDoseStatus": "fully", - "percentage": 66.62 - } - ], - "type": "covid19-area-report" - } -}