Registry entry
Germany National (Long-Stay, Category D) Visa Application
Give the details for a German national (long-stay, category D) visa application: the entry visa a non-EU/EEA/Swiss national needs before travelling to Germany to take up employment (including a Blue Card (EU) or Opportunity Card pathway), study, undertake vocational training, or join family already resident in Germany, where the intended stay exceeds the 90-day Schengen short-stay limit. This document models the Federal Foreign Office's (Auswartiges Amt) own bilingual German/English 'Antrag auf Erteilung eines nationalen Visums' / 'Application for a national visa' form, used uniformly across every German mission worldwide regardless of purpose, plus the Consular Services Portal's (digital.diplo.de) pre-login country/mission routing step. The Consular Services Portal has digitised this same paper form for 28 long-stay purposes since January 2025 (Schengen/short-stay visas are explicitly not yet accepted on the portal), but gates the actual data-entry screens behind account registration and sign-in; this document therefore models the form's own field set rather than the authenticated portal UI (see VERIFICATION.md). It does not model a purpose-specific supplementary question set (e.g. Blue Card (EU) salary/qualification thresholds, an employment contract's specifics, or a university admission letter's details) that the portal or mission collects in addition to this base form for a given purpose; each is a candidate for its own future schema or a MINOR-version extension. It does not submit the application; the live source is always authoritative.
Registry entry
de/auswaertiges-amt/national-visa-application
GovSchema spec v0.3
Machine access
- Schema document
registry/de/auswaertiges-amt/national-visa-application/1.0.0/schema.jsonapplication/schema+json- Verification record
registry/de/auswaertiges-amt/national-visa-application/1.0.0/VERIFICATION.mdtext/markdown- Registry catalog
registry/index.jsonone record per schema id
Field reference
81 fields across 18 steps, read from the published schema.json — names, types, requiredness, and validation as the document states them. The live government form remains the authoritative source.
Country of residence and responsible mission
-
countryOfResidencestring requiredSelected from the Consular Services Portal's searchable country list before any account is created. This determines which German mission (embassy/consulate-general) is responsible for the application and is not itself a field on the paper national-visa application form.
length: 0–100 -
responsibleMissionstring requiredThe specific German mission (e.g. a named embassy or consulate-general) the Consular Services Portal determines is responsible for the applicant, based on countryOfResidence. Confirmed live for India: Bangalore, Chennai, Kolkata, Mumbai, or New Delhi, each covering a distinct set of states/union territories. Selecting a country with only one mission skips this choice.
length: 0–200
Information on the applicant — identity
-
surnamestring requiredSurname (Familienname)
length: 0–100classification: pii -
formerSurnamestring optionalFormer surname(s)
length: 0–200classification: pii -
firstNamesstring requiredFirst name(s) (Vorname(n))
length: 0–100classification: pii -
dateOfBirthdate requiredDate of birth (day/month/year)
classification: sensitive-pii -
placeOfBirthstring requiredPlace of birth
length: 0–200 -
countryOfBirthstring requiredCountry of birth
length: 0–100 -
currentNationalitystring requiredCurrent nationality (please state all nationalities)
length: 0–200 -
formerNationalitystring optionalFormer nationalities
length: 0–200 -
maritalStatusenum requiredThe form's German original lists ledig (single), verheiratet seit (married since), eingetragene Lebenspartnerschaft seit (civil union since), geschieden seit (divorced since), verwitwet seit (widowed since); the '...since' qualifier is captured separately in maritalStatusSinceDate.
enum: single | married | civil union | divorced | widowed -
maritalStatusSinceDatedate optionalDate since when the current marital status applies
-
sexenum requiredSex
enum: male | female
Information on the applicant — travel document and residence permit
-
travelDocumentTypeenum required'Special passport' corresponds to the form's 'sonstiger amtlicher Pass (Servicepass)'.
enum: Passport | Official passport | Diplomatic passport | Special passport | Other -
otherTravelDocumentDetailsstring optionalOther travel document (please specify)
length: 0–300 -
travelDocumentNumberstring requiredNumber of travel document
length: 0–30classification: sensitive-pii -
travelDocumentDateOfIssuedate requiredDate of issue
-
travelDocumentValidUntildate requiredValid until
-
travelDocumentIssuedBystring requiredIssued by
length: 0–200 -
residencePermitNumberstring optionalResidence permit or equivalent document no.
length: 0–100 -
residencePermitValidUntildate optionalResidence permit valid until
Current address and contact details
-
currentAddressStreetstring requiredCurrent address — street, number
length: 0–200classification: pii -
currentAddressPostcodePlacestring requiredCurrent address — postcode, place
length: 0–200classification: pii -
emailstring requiredEmail address
length: 0–200classification: pii -
phonestring requiredPhone number
length: 0–30classification: pii -
mobilePhonestring optionalMobile phone number
length: 0–30classification: pii
Information on the applicant's spouse/registered partner
-
spouseSurnamestring optionalSpouse/registered partner's surname
length: 0–100classification: pii -
spouseFormerSurnamestring optionalSpouse/registered partner's former surname(s)
length: 0–200classification: pii -
spouseFirstNamesstring optionalSpouse/registered partner's first name(s)
length: 0–100classification: pii -
spouseDateOfBirthdate optionalSpouse/registered partner's date of birth
classification: sensitive-pii -
spousePlaceOfBirthstring optionalSpouse/registered partner's place of birth
length: 0–200 -
spouseCountryOfBirthstring optionalSpouse/registered partner's country of birth
length: 0–100 -
spouseCurrentNationalitystring optionalSpouse/registered partner's current nationality
length: 0–200 -
spouseFormerNationalitystring optionalSpouse/registered partner's former nationalities
length: 0–200 -
spousePlaceOfResidencestring optionalSpouse/registered partner's place of residence
length: 0–200
Information on the applicant's children
-
childrenCountinteger requiredSection 3 requires information on the applicant's children, including those aged over 18, even if they remain abroad.
range: 0–∞ -
childrenDetailsstring optionalOne row per child on the source form's table. This document collapses the repeating table into a single free-text field, the same treatment used elsewhere in this registry for small repeating tables (e.g. ie/irishimmigration/short-stay-visa-avats' dependentChildrenDetails).
length: 0–2000
Information on the applicant's parents
-
fatherSurnamestring requiredSection 4 states this information is also required if the person concerned remains abroad.
length: 0–100 -
fatherFirstNamesstring requiredFather's first name(s)
length: 0–100 -
fatherDateAndPlaceOfBirthstring requiredModelled as a single field because the source form combines date and place of birth into one table column for this section (unlike Section 1, which uses separate boxes for the applicant).
length: 0–200 -
fatherNationalitystring requiredFather's nationality
length: 0–100 -
fatherPlaceOfResidencestring requiredFather's place of residence
length: 0–200 -
motherSurnamestring requiredSection 4 states this information is also required if the person concerned remains abroad.
length: 0–100 -
motherFirstNamesstring requiredMother's first name(s)
length: 0–100 -
motherDateAndPlaceOfBirthstring requiredModelled as a single field because the source form combines date and place of birth into one table column for this section (unlike Section 1, which uses separate boxes for the applicant).
length: 0–200 -
motherNationalitystring requiredMother's nationality
length: 0–100 -
motherPlaceOfResidencestring requiredMother's place of residence
length: 0–200
Previous stays in Germany
-
previouslyInGermanyboolean requiredHave you ever been to Germany before?
-
previousStaysDetailsstring optionalThe source form provides five from/to/place rows; collapsed into one free-text field, the same treatment used for other small repeating tables in this document.
length: 0–2000
Intended place of stay in Germany
-
intendedStayStreetstring requiredIntended place of stay in Germany — street, number (if known)
length: 0–200 -
intendedStayPostcodePlacestring requiredIntended place of stay in Germany — postcode, place
length: 0–200 -
accommodationTypeenum requiredHow will you be accommodated?
enum: Single room | Apartment | Collective accommodation | Other -
apartmentRoomsCountinteger optionalNumber of rooms in the apartment
range: 1–∞ -
otherAccommodationDetailsstring optionalOther accommodation (please explain)
length: 0–500
Permanent residence and accompanying family
-
maintainsPermanentResidenceOutsideGermanyboolean requiredDo you intend to maintain your permanent residence outside the Federal Republic of Germany?
-
permanentResidenceLocationstring optionalIf so, where?
length: 0–200 -
familyMembersAccompanyingboolean requiredDo family members intend to accompany you?
-
accompanyingFamilyMembersDetailsstring optionalIf so, which?
length: 0–1000
Purpose of stay in the Federal Republic of Germany
-
purposeOfStayenum requiredThe Consular Services Portal (digital.diplo.de) organises this same underlying purpose into 28 more granular online application categories, e.g. three Blue Card (EU) variants and an Opportunity Card under 'Employment', and separate 'Taking up employment', 'Family reunification', 'Studies', and 'Vocational training' menu entries — confirmed live for Employment/Blue Card/Opportunity Card/Family reunification/Studies/Vocational training. This document models the base national-visa application data common to every purpose; a purpose-specific supplementary question set (e.g. Blue Card salary/qualification thresholds) is out of scope. See VERIFICATION.md.
enum: Employment | Study | Au pair | Language course | Family reunion | Other -
otherPurposeDetailsstring optionalOther purpose (please specify)
length: 0–500 -
intendedEmploymentstring optionalIf applicable, intended employment
length: 0–300 -
stayNotExceedingTwelveMonthsboolean requiredThe exact statement the applicant confirms on the source form.
References in the Federal Republic of Germany
-
referenceStreetstring optionalE.g. employer, educational establishment, or relatives in Germany. The source form does not mark this section as universally mandatory.
length: 0–200 -
referencePostcodePlacestring optionalReference in Germany — postcode, place
length: 0–200 -
referencePhonestring optionalReference in Germany — phone/mobile number
length: 0–30 -
referenceEmailstring optionalReference in Germany — email address
length: 0–200
Trade or profession
-
professionTrainedstring requiredTrade or profession for which you trained
length: 0–300 -
currentProfessionIfDifferentstring optionalCurrent trade or profession, if different from the one you trained for
length: 0–300
Intended duration of stay
-
intendedDurationFromdate requiredIntended duration of stay in Germany — from
-
intendedDurationTodate requiredIntended duration of stay in Germany — to
Means of subsistence and health insurance
-
meansOfSubsistencestring requiredWhat are your means of subsistence?
length: 0–500 -
hasHealthInsuranceForGermanyboolean requiredDo you have health insurance that covers the Federal Republic of Germany?
Criminal convictions
-
hasCriminalConvictionsboolean requiredHave you ever been convicted?
-
convictionGermanyWhenWherestring optionalNeither the Germany nor the Abroad sub-block is guaranteed to apply; the applicant completes whichever is relevant.
length: 0–300 -
convictionGermanyReasonstring optionalConviction germany — reason (what was the crime)
length: 0–500 -
convictionGermanyNatureAndExtentstring optionalConviction germany — nature and extent of penalty
length: 0–300 -
convictionAbroadWhenWherestring optionalNeither the Germany nor the Abroad sub-block is guaranteed to apply; the applicant completes whichever is relevant.
length: 0–300 -
convictionAbroadReasonstring optionalConviction abroad — reason (what was the crime)
length: 0–500 -
convictionAbroadNatureAndExtentstring optionalConviction abroad — nature and extent of penalty
length: 0–300
Immigration history
-
previouslyExpelledDeportedOrRefusedboolean requiredHave you ever been expelled or deported from the Federal Republic of Germany, had an application for a residence permit rejected, or been refused entry into the Federal Republic of Germany?
Health declaration
-
suffersNotifiableDiseaseboolean requiredFootnote 1 lists: smallpox, poliomyelitis, types of influenza not common in humans (e.g. bird flu, swine flu), acute pandemic influenza, severe acute respiratory syndrome (SARS), cholera, pneumonic plague, yellow fever, and viral haemorrhagic fever (e.g. Ebola, Lassa, Marburg).
Verification record
This file is the source-review record for this document version, per the manual-source-review-v1 practice.
Current claim
status:draftverification.method:manual-source-review-v1verification.lastVerifiedAt:2026-07-03maturity.level:structural-reference
Why this cycle picked up Germany's national visa application
This is the recurring "GovSchema Standard Research" cycle (GOV-815). Visa remains the registry's weakest vertical: after ie/irishimmigration/short-stay-visa-avats (GOV-803) closed Ireland's gap, Visa stood at 7/9 jurisdictions, with SG and DE the only gaps left — both already recorded as candidate-status catalog entries from a prior discovery pass (sg/ica/visa-application-save, de/auswaertiges-amt/national-visa-consular-services-portal). Of the two, Germany was judged more tractable this cycle: the Federal Foreign Office publishes its national-visa application as a single canonical, uniformly used PDF form, whereas Singapore's SAVE service requires a Singpass-holding local contact or an authorised visa agent's own account — a harder sourcing problem left for a future cycle. This document closes the DE x Visa cell (Visa now 8/9; SG remains).
Sources examined
- Document
(id, version):de/auswaertiges-amt/national-visa-application/1.0.0 - Spec version: GovSchema
0.3.0 - Authority: Federal Foreign Office (Auswärtiges Amt).
- Primary source (field-by-field, the form itself): https://www.auswaertiges-amt.de/resource/blob/207850/f9342033f2933dc05da54151efe283db/aufenthalten-data.pdf, the Federal Foreign Office's own canonical, bilingual German/English "Antrag auf Erteilung eines nationalen Visums" / "Application for a national visa" (5 pages), fetched directly (HTTP 200, no access block) and text-extracted with the registry's established
pdfjs-disttechnique (the PDF carries no AcroForm/XFA fields — despite a "-data" filename suffix — so it is a plain printed-form text layer, the same class as several other static PDFs already used in this registry). Cross-checked byte-for-byte identical in extracted text against a second, independently hosted copy at a German mission's own site (https://dhaka.diplo.de/resource/blob/2081380/d7f0cecc3a5d78522cf3c035d2942c62/antrag-d-visa-data.pdf), confirming this is the single form every mission uses, not a jurisdiction-specific variant. - Landing/context page: https://www.auswaertiges-amt.de/en/visa-service/visumantragformulare-d/231156 ("Application forms for longer-term stays in Germany (national visa, category D)"), which lists this same bilingual form alongside seven other German-paired language variants (French, Spanish, Arabic, Chinese, Portuguese, Russian, Turkish) — corroborating that this is the single, purpose-agnostic national-visa form, not one of several purpose-specific forms.
- Portal overview page: https://www.auswaertiges-amt.de/en/visa-service/consular-services-portal and https://digital.diplo.de/, describing the Consular Services Portal's four-phase process (online registration/submission with uploaded documents → preliminary completeness review → appointment scheduling → in-person biometrics/fee/original-document check) and confirming it has been "fully online since Jan 2025 for 28 long-stay purposes," explicitly excluding Schengen (short-stay) visas.
- Live system verification (Consular Services Portal, digital.diplo.de). A headless Playwright/Chromium session with a realistic desktop user agent reached every public page with no access block: the portal homepage; the top-level purpose menu (Opportunity Card, Blue Card (EU), Family reunification, Taking up employment, Studies and Search for a place to study, Vocational training and advanced training); the "Blue Card (EU)" and "Employment as an academic" pages, each with a searchable country-of-residence combobox (confirmed live: typing "India" and pressing Enter reveals a live-rendered German-mission radio-button list — Bangalore, Chennai, Kolkata, Mumbai, New Delhi — each annotated with the Indian states/union territories it covers) and an "Apply online now" button that stays disabled until both a country and a mission are picked. Clicking "Apply online now" after selecting country+mission triggers a redirect chain to
sso.digital.diplo.de/auth/realms/AUSLPORTAL/...(a Keycloak identity-provider realm) and returns todigital.diplo.de/silent-check-sso.html#error=login_required— confirming the actual data-entry screens require Bund ID/portal-account registration and sign-in before any field is rendered, the same login-gated-form class already recorded elsewhere in this registry (e.g.nz/dia/realme-verified-identity). No credentials were available or used; no account was created. Per source-of-truth fidelity, this document is authored from the Federal Foreign Office's own canonical PDF instead — the same form the portal's own description says it digitises — rather than from the gated screens. - Retrieved / reviewed: 2026-07-03.
- Reviewer: GovSchema Engineering (Standards Engineer — initial authoring source review).
What the PDF's 16 sections map to
- Section 1 (applicant identity, travel document, current address/ contact) →
surnamethroughmobilePhone. - Section 2 (spouse/registered partner) →
spouseSurnamethroughspousePlaceOfResidence, gated onmaritalStatusbeingmarriedorcivil union. - Section 3 (children, including those over 18, "also required if remaining abroad") →
childrenCount/childrenDetails, collapsing the source's repeating table into one free-text field once populated — the same treatmentie/irishimmigration/short-stay-visa-avatsuses for its own small repeating tables (dependentChildrenDetails,previousStaysDetailsbelow). - Section 4 (parents, "required even if the persons concerned remain abroad") →
fatherSurname.."motherPlaceOfResidence, allrequired: truesince the source form does not condition this section on anything.fatherDateAndPlaceOfBirth/motherDateAndPlaceOfBirth` are each a single field because the source table combines date-and-place-of-birth into one column for this section (unlike Section 1's separate boxes for the applicant). - Section 5 (previous stays in Germany, up to five, month/year) →
previouslyInGermany/previousStaysDetails. - Section 6 (intended place of stay, accommodation type) →
intendedStayStreetthroughotherAccommodationDetails. - Section 7 (permanent residence maintained abroad) →
maintainsPermanentResidenceOutsideGermany/permanentResidenceLocation. - Section 8 (accompanying family) →
familyMembersAccompanying/accompanyingFamilyMembersDetails. - Section 9 (purpose of stay; the exact
<=12 monthssingle-validity statement) →purposeOfStaythroughstayNotExceedingTwelveMonths. The enum (Employment/Study/Au pair/Language course/Family reunion/Other) is the form's own picklist, distinct from (and coarser than) the Consular Services Portal's 28 online purpose categories — see the field's own description and "What is NOT modelled" below. - Section 10 (references in Germany — employer, school, relatives) →
referenceStreetthroughreferenceEmail, all optional: the source form does not mark this section as universally mandatory the way it does Sections 1-9. - Section 11 (trade/profession trained and, if different, current) →
professionTrained/currentProfessionIfDifferent. - Section 12 (intended duration, from/to) →
intendedDurationFrom/intendedDurationTo. - Section 13 (means of subsistence; German health-insurance coverage) →
meansOfSubsistence/hasHealthInsuranceForGermany. - Section 14 (criminal convictions, in Germany and/or abroad, each an independent when/where + reason + nature-and-extent sub-block) →
hasCriminalConvictionsplus the sixconviction{Germany,Abroad}*fields, eachvisibleWhen hasCriminalConvictions == truebut not individuallyrequiredWhen— an applicant may have only a Germany or only an abroad conviction to report, not both. - Section 15 (expelled/deported/refused a residence permit/refused entry) →
previouslyExpelledDeportedOrRefused, modelled as the form's own single combined question rather than four separate booleans, since the source presents it as one sentence with one implied yes/no answer. - Section 16 (notifiable-disease footnote list) →
suffersNotifiableDisease, with the exact footnote 1 disease list reproduced in the field description. - Photo requirement (page 1 header) and the Declaration and Section 54(2)/Section 53 AufenthG legal-notice acknowledgement (pages 4-5, each independently signed and dated, with exact bilingual attestation text captured verbatim from the PDF) → the three
documents[]entries. - Portal-specific, not on the paper form:
countryOfResidenceandresponsibleMission, the Consular Services Portal's own live-confirmed pre-login routing step (see above), included because an agent using this schema to prepare an application will need to know which mission is responsible before any of the form's own fields are relevant.
Mock-data test run
Per the issue's phase-4 instruction to test-run the schema with valid mock data, a one-off Python script (not committed to the repo) implementing the same equals/notEquals/in/greaterThan/greaterThanOrEqual/all/ any/not grammar as GSP-0013's Condition type checked every type/required/requiredWhen/visibleWhen/validation.enum constraint and both crossFieldValidation rules in schema.json against four scenarios:
`` OK Scenario 1: solo Indian skilled-worker applicant, single, no branch triggers OK Scenario 2: branch-heavy — married w/ spouse+child, prior Germany stay, apartment, other purpose, conviction OK Scenario 3: Other travel-document type, Other accommodation, Study purpose, expelled, abroad conviction FAIL Negative control: missing spouseFirstNames while married (expected FAIL) - MISSING required field: spouseFirstNames ``
Scenarios 1-3 together exercise every requiredWhen/visibleWhen branch this document defines (spouse/partner fields; children; previous stays; apartment room count; other-accommodation explanation; other/employment purpose sub-fields; both Germany and abroad conviction sub-blocks; marital-status-since date) and both crossFieldValidation rules (intendedDurationToAfterFrom, travelDocumentValidAfterIssue|), all of which held. The fourth scenario is a negative control confirming the evaluator actually enforces requiredWhen (it correctly reports spouseFirstNames missing once maritalStatus is married) rather than trivially passing everything. No defects were found in the schema itself during this pass.
Both registry validators were run against the schema document itself and pass:
``` $ node tools/validate.mjs registry/de/auswaertiges-amt/national-visa-application/1.0.0/schema.json ok registry/de/auswaertiges-amt/national-visa-application/1.0.0/schema.json
$ node tools/validate-ajv.mjs registry/de/auswaertiges-amt/national-visa-application/1.0.0/schema.json ok registry/de/auswaertiges-amt/national-visa-application/1.0.0/schema.json [v0.3] ```
The full registry (152/152 schema documents, 3/3 mapping.json companions) continues to validate after this addition.
What is NOT modelled (out of scope), and why
- The authenticated Consular Services Portal's own data-entry screens — gated behind Bund ID/account registration (see above); this document models the underlying paper form the portal digitises instead.
- Schengen (short-stay) visas — the Consular Services Portal and this document both explicitly exclude them; that gap is already closed by
fr/france-visas/schengen-visa-applicationfor the harmonised Schengen form, and Germany's own short-stay process is a separate, narrower candidate for a future schema. - Purpose-specific supplementary question sets the portal or a mission collects in addition to this base form for a given purpose — e.g. a Blue Card (EU) applicant's qualification/salary thresholds and employer contract details, an Opportunity Card applicant's points-system criteria, a student's course-acceptance/financing evidence, or a family reunification applicant's sponsor details. Each of the portal's 28 purposes may layer its own additional fields on top of this shared base; out of scope for this initial schema, and each a candidate for its own future schema or a MINOR-version extension, the same modelling choice
ie/irishimmigration/short-stay-visa-avatsmakes for its own Employment/Study Visa Application question sets. - The exact wording and mechanics of the appointment-scheduling and in-person biometrics/fee-payment phases (phases 3-4 of the portal's own four-phase description) — process context only, not modelled as fields.
- Service-provider fees some missions charge for application-checking services (mentioned on the portal's Blue Card page) — amount varies by mission and is not itself an applicant-supplied field.
Scope and jurisdiction notes
- This is Germany's first Visa-vertical document.
de/bmi/*andde/finanzamt/*andde/gewerbeamt/*andde/kba/*cover Passport/ National ID/Taxes/Business Formation/DMV respectively; this document opens a fifth DE authority segment,de/auswaertiges-amt/*. iduses theauswaertiges-amtauthority segment (the Federal Foreign Office's own German name, unabbreviated) rather than an abbreviation, consistent with this registry's existingde/gewerbeamt/*andde/finanzamt/*segments.- Conditional requiredness/visibility uses
requiredWhen/visibleWhen(GSP-0013), targeting spec v0.3, the same as every other Visa-vertical document in this registry.
Re-verification
Per the practice's cadence, nextReviewBy is set to 2027-01-01 (6 months). Because status remains draft (this document was authored from the canonical PDF form but not against the live, authenticated portal itself), a future review should prioritize obtaining portal credentials (or partnering with a mission/applicant who has them) to confirm the authenticated data-entry screens field-by-field, which would also resolve whether any Section 10 fields are in fact mandatory online even though the paper form does not mark them so.
View the raw record (VERIFICATION.md)
Version history
-
1.0.0draftlatestthis pagehas verification recordschema.json
Independent and non-affiliated
GovSchema is an independent, open-source project. This reference is not produced, reviewed, or endorsed by Federal Foreign Office (Auswartiges Amt) or any government. The authoritative source is always the live government form and its official instructions.