Requirements API FAQ

The following pages contain some of the frequently asked questions and standard troubleshooting guides for issues around integrating the Sherpa° API.

Where does the information come from?

Data is aggregated from various trusted sources. Most of the information comes directly from Government Website, Travel Organizations & Services.

Source Examples:

How often is information updated

Information is collected 24/7 and fresh data is pushed on an hourly basis after passing quality control. It is not recommended to cache the data for longer than an hour.

Language support

The content is localized to several languages. See the language support page.

What are all your endpoints and what methods do they use?

Sherpa° currently as part of our Requirements API currently have below endpoints available to use with methods listed below

EndpointMethodDescription
TripsPOSTThe trips endpoint is our most up to date and is a starting area we highly recommend for all customers to review. This endpoint has been developed from a traveler's journey perspective.
RestrictionsGETOur restrictions endpoint allows customers to dive deeper into our dataset. It is possible to get restrictions that apply for vaccinated or unvaccinated traveller's, restrictions filtered based on countries or categories.
ProceduresGETOur procedures endpoint allows customers to dive deeper into our dataset. It is possible to get procedures that apply for vaccinated or unvaccinated traveller's, restrictions filtered based on countries or categories. Our VISA information is also displayed as procedures in our data.
CountriesGETOur Countries endpoint presents data from a country overview, data based on specific countries as an example can be reviewed using this.
RegionsGET

API Rate Limit and Response Size Limitation

All our API endpoints currently impose a rate limit of 100 requests/second. In a scenario where the rate limit will hinder a particular business case, please get in touch with our support team to review and partner with you in creating a solution. We have a hard physical limit of 10 MB for response size. We highly recommend at present to chunk data where possible.

Below is an example scenario :

Use Case: I want to utilize the /restriction endpoint to get all available restrictions on your database for review, but I get a 500 error when making the request.

Solution: It would be advisable to utilize the filter[countries] to chunk the data and, for each request, get restrictions for a set of 25-50 countries.

Sherpa API HTTP Error Codes

While trying out the Sherpa API endpoints, there are scenarios where errors could come up due to misplaced keywords, typos and/or wrong keys. We have collected a few common errors related to the Sherpa API platform below.

Error CodesDescription
400Validation error, bad request, likely due to missing expected input, misspelled keyword or invalid token/key.
401Unauthorized, likely when you attempt to access the endpoint without a registered id/key.
403Permission denied, probably due to (incorrect) affiliate ID / Key used on the wrong platform
404Not found. The current request is not defined by this API. Likely due to a wrong or misspelled endpoint address.
500Internal Server Error, usually due to missing internal parameters

Timezone

All restrictions and procedure data are stored and returned in UTC timezone.

Certain airports are not on your list. What is the process to get these airports added in for us?

We highly suggest passing country code instead of airport code where possible. The end-users will receive the exact travel requirements. If the passing of country code does not meet your business requirements, we add airports to our database on a bi-monthly basis. If there is a list of airports your travellers visit that isn't supported by sherpa°, please reach out to your Partner Success Manager with the airport three-letter codes and some traffic data for review by our product team.

What are your supported headers for API request? Our WebApp and trip element solutions utilize our /trips endpoint. Our /trips endpoint followed the POST method and below is a list of headers in the options message:

Text
access-control-allow-headers:
x-sherpa-deviceId,DNT,User-Agent,X-User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range,Authorization,sfdc_stack_depth

A CORS error will be visible in the console and network tabs if any custom headers are added to the request. It is recommended to remove any custom headers.

Can you provide a list of possible documentTypes for sherpa° visa procedures?

For documentTypes, the possible values are:

  • E_VISA
  • VISA
  • ETA
  • EMBASSY_VISA

For visa procedures, the possible values are:

  • Electronic travel authorization
  • Electronic visitor visa
  • Visitor visa
  • ESTA
  • Visa on arrival
  • Visa not required

Tags

Content is sometimes tagged for additional context in the sherpa° system. Below is the list of currently used tags and their descriptions.

Tag NameTag Description
internationalIs present when a restriction/procedure applies to an international traveller (one who is crossing an international border to enter the country/region). Both international and domestic tags can be present, indicating that the restriction/procedure applies to all travellers.
domesticIs present when a restriction/procedure applies to a domestic traveller (e.g., crossing a domestic border across state/subdivision lines). Both international and domestic tags can be present, indicating that the restriction/procedure applies to all travellers.
airTag is present when a restriction/procedure applies to travellers crossing borders by air. Multiple travel mode tags can be present, meaning that the restriction/procedure applies to all listed forms of travel.
landSame as travelMode air
seaSame as travelMode air