@@ -1,25 +1,32 @@
 {
   "openapi": "3.0.1",
   "info": {
     "title": "VIRD PseudonymisationService",
-    "version": "v1.1"
+    "version": "v2.0"
   },
   "paths": {
-    "/api/v1.1/pseudonym/generate": {
+    "/api/v2.0/pseudonym/generate": {
       "post": {
         "tags": [
           "Pseudonym"
         ],
         "summary": "Generiert für die übergebenen Patientendaten eine Transfernummer, mit dessen Hilfe die Pseudonyme für diesen Datensatz abgerufen werden können.",
         "requestBody": {
           "description": "Die Patientendaten, für die die Transfernummer generiert werden soll",
           "content": {
             "application/json": {
               "schema": {
-                "$ref": "#/components/schemas/PatientCaseData"
+                "oneOf": [
+                  {
+                    "$ref": "#/components/schemas/PatientCaseData"
+                  },
+                  {
+                    "$ref": "#/components/schemas/PatientNonKvCaseData"
+                  }
+                ]
               }
             }
           }
         },
         "responses": {
           "200": {
@@ -30,19 +37,22 @@
                   "$ref": "#/components/schemas/PseudonymisationRequestPersistenceResult"
                 }
               }
             }
           },
           "400": {
-            "description": "Es wurden ungültige Daten gesendet"
+            "description": "Es wurde eine fehlerhafte Nachricht gesendet"
           },
           "401": {
-            "description": "Es wurde keine Authentifizierung gesendet"
+            "description": "Die Authentifizierung an der Schnittstelle ist fehlgeschlagen"
           },
           "403": {
-            "description": "Es wurden in der Referenz-Umgebung Echtdaten gesendet. Dies ist nicht erlaubt."
+            "description": "Die Anfrage war nicht autorisiert"
+          },
+          "415": {
+            "description": "Es wurde ein falscher Content-Type gesendet"
           },
           "500": {
             "description": "Es ist ein interner Fehler bei der Verarbeitung aufgetreten"
           }
         }
       }
@@ -56,15 +66,15 @@
           "IdKrankenversicherung",
           "IdVersicherter"
         ],
         "type": "object",
         "properties": {
           "IdVersicherter": {
-            "pattern": "^[A-Z]{1}[0-9]{9}$",
+            "pattern": "^([A-Z]{1}[0-9]{9})|([1-9][0-9]{10})$",
             "type": "string",
-            "description": "Definiert die Identifikationsnummer des Versicherten. Für gesetzlich versicherte Patienten ist dies die eGK-Nummer. Der Wert muss einer gültigen KVNR entsprechen."
+            "description": "Definiert die Identifikationsnummer des Versicherten. Für gesetzlich versicherte Patienten ist dies die eGK-Nummer. Für die Heilfürsorge Bundeswehr ist diese Angabe eine an die Steueridentifikationsnummer angelehnte Nummer. Der Wert muss einer gültigen Angabe entsprechen."
           },
           "IdDatensatz": {
             "pattern": "^[a-zA-Z0-9.\\-]{3,40}$",
             "type": "string",
             "description": "Definiert die Datensatz-Id des betroffenen Falls. Der Wert muss einer gültigen Datensatz-Id entsprechen."
           },
@@ -74,12 +84,33 @@
             "description": "Definiert die Id der Krankenversicherung des Versicherten. Der Wert muss einer gültigen IK-Nummer entsprechen."
           }
         },
         "additionalProperties": false,
         "description": "Definiert die Daten zu einem Implantatseingriff zu einem Patienten"
       },
+      "PatientNonKvCaseData": {
+        "required": [
+          "IdDatensatz",
+          "IstPatientOhneDtKv"
+        ],
+        "type": "object",
+        "properties": {
+          "IstPatientOhneDtKv": {
+            "pattern": "^(?:true)$",
+            "type": "string",
+            "description": "Kennzeichnet den betroffenen Fall eindeutig ohne deutsche Krankenversicherungsnummer.  Der Wert muss immer true entsprechen."
+          },
+          "IdDatensatz": {
+            "pattern": "^[a-zA-Z0-9.\\-]{3,40}$",
+            "type": "string",
+            "description": "Definiert die Datensatz-Id des betroffenen Falls. Der Wert muss einer gültigen Datensatz-Id entsprechen."
+          }
+        },
+        "additionalProperties": false,
+        "description": "Definiert die Daten zu einem Implantatseingriff für einen Patienten ohne deutsche Krankenversicherungsnummer"
+      },
       "PseudonymisationRequestPersistenceResult": {
         "type": "object",
         "properties": {
           "Transfernumber": {
             "type": "string",
             "description": "Für die Registerstelle verschlüsselte Transfernummer als HEX-Repräsentation"
