---
title: "All destinations for a single passport (Pro+)"
method: GET
path: "/api/v1/visa/bulk"
tags: ["Visa data"]
---

# All destinations for a single passport (Pro+)

`GET /api/v1/visa/bulk`

Several destinations for one passport in a single round-trip. The
`destination` parameter is required: pass a comma-separated list of up
to 25 ISO3 codes.

Each pair returned counts as one request against your monthly quota.

Requires Pro plan or above.

## Query parameters

- `passport` string, required — ISO 3166-1 alpha-3 country code.
- `destination` string
- `lang` 'en' | 'fr' | 'es' | 'pt' | 'de' | 'it' | 'ja' | 'ko' | 'zh' | 'ru' | 'ar' | 'hi' | 'th' | 'vi' | 'tl'

## Response `200`

Bulk result.

- BulkResponse
  - `passport` string, 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
  - `total` integer, required
  - `destinations` BulkDestination[], required
    - `destination` string — ISO 3166-1 alpha-3 country code.
    - `requirement` 'visa_free' | 'visa_required' | 'e_visa' | 'visa_on_arrival' | 'eta' | 'no_admission'
    - `visa_free_days` integer, nullable
    - `description` string
    - `passport_validity_months` integer
    - `visa_fee` VisaFee
      - `single_entry` MoneyAmount
        - `amount` number
        - `currency` string
      - `multiple_entry` MoneyAmount
        - `amount` number
        - `currency` string
    - `safety` SafetyInfo
      - `level` integer
      - `advisory` string
      - `source` string
      - `updated_at` string
    - `health_requirements` HealthRequirements
      - `covid_test` boolean
      - `vaccination_proof` boolean
      - `health_declaration` boolean
      - `quarantine_days` integer
      - `ebola_screening` boolean
    - `vaccinations_required` string[]
    - `insurance_required` InsuranceRequired
      - `required` boolean
      - `min_coverage` number
      - `currency` string
    - `entry_by_mode` EntryByMode
      - `air` integer
      - `land` integer
      - `sea` integer
    - `remote_work_visa` RemoteWorkVisa
      - `available` boolean
      - `duration_months` integer
      - `fee` MoneyAmount
        - `amount` number
        - `currency` string
      - `requirements` string[]

## Other responses

- `400` — Missing or malformed parameter.
- `401` — Missing API key, query param or session cookie.
- `403` — Invalid / inactive key, or plan below the endpoint's minimum tier.
- `404` — No data for the requested resource.
- `429` — Monthly quota or burst rate exceeded.

---

[API](https://skmtc.net/orizn/apis/orizn-visa-api.md) · [All operations](https://skmtc.net/orizn/apis/orizn-visa-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/orizn/orizn-visa-api/revisions/97ea5156ef11/schema)
