Can I enter?

Visum- en inreisvoorwaarden — 199 paspoorten · 39.402 routes

Can I enter?

Kies een paspoort en een bestemming: de regel, de toegestane verblijfsduur en wat je vóór je vlucht moet regelen. Vijf gratis checks per dag, geen account.

Meer details

Met deze documenten kun je recht hebben op een vrijstelling, als de bestemming die publiceert; op zichzelf veranderen ze het resultaat nooit. Datums controleren we in je browser aan de hand van de toegestane verblijfsduur en de paspoortgeldigheidsregel van de bestemming: wat je hier invult, sturen we niet mee met de check.

5 gratis checks per dag, geen account nodig

Bevestig dat je een mens bent, dan krijg je 20 checks per dag

Waar naartoe · Vertrouwen en transparantie · Ontwikkelaars en agents: dezelfde check als HTTP-verzoek

02 — Vertrouwen en transparantie

Rechtstreeks geteld uit de dataset zelf

Elk cijfer hieronder is berekend uit precies de dataset die hier live staat: niets is handmatig ingevuld. Elke inreisregel wordt elke dag opnieuw gecheckt bij de officiële bron waar we naar verwijzen; de live tellers komen rechtstreeks uit productie en worden elke vijf minuten ververst.

199

Paspoorten in de dataset

39.402

Routes van paspoort naar bestemming

191/199

Gecheckt bij officiële bronnen

827

Regels met bronvermelding

71

Vandaag opnieuw gecheckte regels

538

Dagelijks gecheckte officiële bronnen

0d

Mediane tijd sinds de laatste check

2026-08-12

Datasetversie

API-uptime · 30 dagen

172/199

Gelinkte officiële aanvraagportalen

Bezoeken van AI-agents vandaag

MCP-toolaanroepen · totaal

Controleactiviteit

  • AGOSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • ARESources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • ATGSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • AUSSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • AUTPassport-validity, blank-pages, onward-ticket, residence-permit-exemption and purpose-scope rules re-read against oesterreich.gv.at and bmeia.gv.at, all unchanged; the flagged content-hash change was a cosmetic page-furniture update.
  • BHRSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • BIHSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • BTNPassport-validity, sustainable-development-fee and purpose-scope rules re-read against doi.gov.bt and bhutan.travel, all unchanged.
  • CANPassport, blank-pages, health, TWOV, residence-permit-exemption and purpose-scope rules re-read against canada.ca, all unchanged; the flagged eta.html hash change was a transient scheduled-maintenance banner.
  • CHLFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • CHNFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • CIVFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • CMRFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • CODFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • COGFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • COLSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • COMFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • CPVTourist-visa duration corrected from a flat 30-day cap to 90 days (extendable once to 180); transit visa corrected to 4 days; added the EASE pre-registration and TSA airport-tax requirement that applies even to visa-exempt travellers. Passport-validity and onward-ticket reconfirmed unchanged.
  • CRISources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • CUBFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • CYPDeep audit: blank-pages, airport-transit-visa and two of three residence-permit-exemption clauses reconfirmed unchanged, and the third clause's excluded-country list corrected to 'except the UK and Ireland' (was 'except Ireland'); passport-validity flagged needs_review because the cited embassy page states two different anchors for the 3-month buffer (beyond the visa's validity in one section, beyond the trip in another) without reconciling them.
  • CZEFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • DEUFull deep audit: every populated field (passport validity, onward ticket, TWOV, residence-permit exemptions, purpose scope where applicable) re-read against live official sources and found accurate.
  • GABSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • GINSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • HUNSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • INDPassport-validity, blank-pages, onward-ticket and purpose-scope rules re-read against indianembassyusa.gov.in and indianvisaonline.gov.in, all unchanged; the flagged hash change was a page-footer date edit.
  • IRNSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • IRQPassport-validity, blank-pages, onward-ticket and purpose-scope rules re-read against UK FCDO and the Iraqi MOFA, all unchanged.
  • KHMSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • LCAPassport-validity and purpose-scope rules re-read against stlucia.org and govt.lc, unchanged.
  • LSOBlank-pages rule flagged needs_review: the cited source states the 3-clean-pages requirement specifically for trade-purpose visas, while the general embassy visa-requirements list has no blank-pages item at all. Passport-validity, onward-ticket, health and purpose-scope reconfirmed unchanged.
  • MDASources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • MNGSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • MOZSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • MUSSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • MYSSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • NAMBlank-pages note corrected: both current MHAISS documents require 3 clean pages uniformly; the prior note's claim of a 2-page exception for online applications was not supported by either source. Passport-validity, onward-ticket, health and purpose-scope reconfirmed unchanged.
  • NGASources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).
  • NPLSources previously flagged unreachable were retried and loaded successfully; live official content matches the stored rules unchanged (prior failures were sandbox/proxy artifacts, not real outages).

Alle data, machineleesbaar: GET /transparency · GET /stats.json · GET /changes.json · status.canienter.com

03 — Integratie

Het antwoord, afgerekend per verzoek.

Een onbetaalde aanroep geeft HTTP 402 terug met betaalinstructies. Elke x402-client kan $0.03 in USDC afrekenen en het verzoek daarna opnieuw sturen. Betalingen lopen via Base mainnet.

# Free tier — 5 checks a day, no auth
curl "https://api.canienter.com/free/check?passport=NLD&destination=JPN"

# Paid tier — answers HTTP 402 Payment Required. The offer (amount,
# asset, pay-to) is base64 JSON in the PAYMENT-REQUIRED header;
# any x402 client settles it and retries automatically.
curl "https://api.canienter.com/v1/check?passport=NLD&destination=JPN"

# Peek at the offer without paying:
curl -s -o /dev/null -D - "https://api.canienter.com/v1/check?passport=NLD&destination=JPN" \
  | grep -i "^payment-required" | cut -d" " -f2 | base64 -d
// npm i @x402/fetch @x402/evm viem   (Node 18+)
// WARNING: running this spends real USDC ($0.03/call, Base mainnet).
// Inspect the offer first, free of charge:
const probe = await fetch("https://api.canienter.com/v1/check?passport=NLD&destination=JPN");
console.log(probe.status, /* 402 */ JSON.parse(atob(probe.headers.get("PAYMENT-REQUIRED"))));

// Then pay per call — key from an env var, never hardcoded or logged:
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
import { privateKeyToAccount } from "viem/accounts";

const account = privateKeyToAccount(process.env.X402_PRIVATE_KEY);
const payFetch = wrapFetchWithPaymentFromConfig(fetch, { schemes: [
  { network: "eip155:8453", client: new ExactEvmScheme(account) }]});

const res = await payFetch(
  "https://api.canienter.com/v1/check?passport=NLD&destination=JPN");
if (!res.ok) throw new Error("check failed: " + res.status);
const { requirement, allowed_stay_days } = await res.json();
# The API publishes its own agent skill (Claude Code paths shown;
# Codex/Cursor/other agents: use your agent's skills directory)
mkdir -p ~/.claude/skills/visa-check
curl -s "https://api.canienter.com/.well-known/agent-skills/visa-check/SKILL.md" \
  -o ~/.claude/skills/visa-check/SKILL.md

# Discovery index with the SKILL.md sha256 digest (verify, updates, extras):
curl -s "https://api.canienter.com/.well-known/agent-skills/index.json"

# Remove: delete ~/.claude/skills/visa-check

Met de skill kan een agent inreisvoorwaarden opzoeken en per verzoek betalen via x402. Er is geen API-key die kan uitlekken.

Docs voor machines: GET /llms.txt · GET /openapi.json

Toevoegen aan agent

EndpointPrijs
/free/checkgratis · 5/dag
/v1/check$0.03
/v1/trips/evaluatehele reis: meerdere trajecten, paspoorten, uitleg$0.10
/v1/passport/{iso3}alle 198 bestemmingen tegelijk$0.15
  • USDC op Base mainnet · x402 v2
  • Geen account, geen API-key of contract
  • Elk antwoord met datum laatste check

01 — Aanroepen

GET /v1/check: het onbetaalde verzoek geeft HTTP 402 terug met een betaalvoorstel.

02 — Betalen

$0.03 USDC via elke x402-client, afgewikkeld op Base mainnet.

03 — Antwoord

JSON verdict plus een on-chain betalingsbewijs.

Geen ontwikkelaar? Met twee regels HTML zet je dezelfde antwoorden op je eigen site: geen API-call, geen account.

04 — Jouw site

Werkt ook op jouw pagina's.

Een reisgids, een verhuisblog, een boekingsflow: plak twee regels en je lezers zien de vereiste, de toegestane verblijfsduur en een link naar de regels met bronvermelding, zonder dat ze je pagina hoeven te verlaten. Het is gratis voor elke site, commercieel of niet. Het enige wat we vragen: laat de link met de bronvermelding staan.

<!-- anywhere in your page -->
<div data-canienter-widget></div>
<script src="https://canienter.com/embed.js" async></script>

<!-- on a Japan guide, pre-select the destination -->
<div data-canienter-widget data-destination="JPN"></div>
  • Geen cookies, geen tracking, geen account
  • Neemt de licht- of donkermodus van je lezer over
  • Past zich automatisch aan de container aan
  • Antwoorden verwijzen naar dezelfde officiële bronnen

Widgetdocumentatie, opties en live voorbeeld · Voor ontwikkelaars