v1

latestOpenAPI 3.0.3Commercial — see Terms2026-07-13274891.4 KB
Visa data

All destinations for a single passport (Pro+)

Every destination for one passport in a single round-trip. Pass a comma-separated destination list to narrow it; omit to return every destination (~199).

A single bulk call counts as 1 request against your quota regardless of how many rows come back.

Requires Pro plan or above.

get/api/v1/visa/bulk

Query parameters

passportstring required

ISO 3166-1 alpha-3 country code.

Example:FRA

ISO 3166-1 alpha-3 passport code, e.g. FRA.

destinationstring
Example:JPN,THA,BRA

Comma-separated ISO3 list. Omit to return every destination.

lang'en' | 'fr' | 'es' | 'pt' | 'de' | 'it' | 'ja' | 'ko' | 'zh' | 'ru' | 'ar' | 'hi' | 'th' | 'vi' | 'tl'
Example:en

Response language. Defaults to en. Non-English requires Starter or above.

Response

Bulk result.

passportstring required

ISO 3166-1 alpha-3 country code.

lang'en' | 'fr' | 'es' | 'pt' | 'de' | 'it' | 'ja' | 'ko' | 'zh' | 'ru' | 'ar' | 'hi' | 'th' | 'vi' | 'tl' required
totalinteger required

Example response

{
  "passport": "FRA",
  "lang": "en",
  "total": 199,
  "destinations": [
    {
      "destination": "FRA",
      "requirement": "visa_free",
      "visa_fee": {
        "single_entry": {
          "amount": 50,
          "currency": "USD"
        },
        "multiple_entry": {
          "amount": 50,
          "currency": "USD"
        }
      },
      "safety": {
        "level": 1,
        "advisory": "Exercise normal precautions",
        "source": "diplomatie.gouv.fr",
        "updated_at": "2026-04-12"
      },
      "insurance_required": {
        "required": true,
        "min_coverage": 30000,
        "currency": "EUR"
      },
      "entry_by_mode": {
        "air": 90,
        "land": 30,
        "sea": 90
      },
      "remote_work_visa": {
        "available": true,
        "duration_months": 12,
        "fee": {
          "amount": 50,
          "currency": "USD"
        }
      }
    }
  ]
}