API reference / JSON:API

get/v3/procedures

What a traveller must do to enter a destination

Operation
v3ListProcedures
Authentication
API key

The eligibility engine, as procedures. One destination at a time — `filter[country]` is required, because a procedure is a rule for entering *a* country and all four under one `data` member would be four different answers.

**`exempt` is the only reason a nationality is absent from `data`**, and `meta.excluded.exempt` says how many were omitted. An exempt nationality has nothing to do, so it has no procedure — and the count is what keeps an empty result from being read as "we did not look".

**`filter[activeDate]` and `filter[originCountries]` are refused, not ignored.** We hold no rule validity windows and none of these destinations keys a rule on origin; the 400 says so. Answering a question about a date with rules that are not date-aware is the failure this engine exists to avoid.

Request

Parameters

filter[country]queryrequiredstring
filter[nationalities]querystring
filter[documentType]querystring
filter[category]querystring
filter[travelPurpose]querystring
includequerystring
languagequerystring

Responses

200A JSON:API collection of procedures.
metaobjectrequired
dataJsonApiResource[]required
400A malformed parameter, or a filter/include/language this endpoint cannot honour. Refused rather than ignored: an ignored filter returns a full answer that looks filtered.
errorsobject[]required
401No key, an unknown key, a revoked key, or an inactive tenant.
errorsobject[]required
403The key is valid but does not hold `reference:read`.
errorsobject[]required
404No such resource.
errorsobject[]required

Example

curl
curl -X GET https://api.haavisa.com/v3/procedures \
  -H "Authorization: Bearer $HAAVISA_API_KEY"?filter[country]=<filter[country]>

More in JSON:API

Something unclear? The eligibility guide explains the model behind the answers; the errors guide covers the envelope.