""" Options: Date: 2024-12-22 01:41:32 Version: 8.12 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://taxfiling.pwc.de #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: BatchProtokollRequest17.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ import datetime import decimal from marshmallow.fields import * from servicestack import * from typing import * from dataclasses import dataclass, field from dataclasses_json import dataclass_json, LetterCase, Undefined, config from enum import Enum, IntEnum # @Api(Description="Represents a base class for a file with raw data.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FileBase: """ Represents a base class for a file with raw data. """ # @ApiMember(Description="The raw data content of the file.", Name="Content") content: Optional[bytes] = None """ The raw data content of the file. """ # @Api(Description="Represents a portal certificate that is protected by a password.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class PortalCertificate(FileBase, ISecuredCertificate, IHasIndex): """ Represents a portal certificate that is protected by a password. """ # @ApiMember(Description="The unique identifier of the certificate.") id: Optional[str] = None """ The unique identifier of the certificate. """ # @ApiMember(Description="The position of the certificate element in an indexed collection of certificates.") index: int = 0 """ The position of the certificate element in an indexed collection of certificates. """ # @StringLength(255) # @ApiMember(Description="The password to protect the certificate from unauthorized access.") pin: Optional[str] = None """ The password to protect the certificate from unauthorized access. """ # @StringLength(2147483647) # @ApiMember(Description="The description of the certificate.") description: Optional[str] = None """ The description of the certificate. """ # @ApiMember(Description="Tags that can be used to label or identify the certificate.") tags: Optional[List[str]] = None """ Tags that can be used to label or identify the certificate. """ # @ApiMember(Description="Gets or sets the file name of the certificate.") name: Optional[str] = None """ Gets or sets the file name of the certificate. """ # @ApiMember(Description="The raw data content of the file.", Name="Content") content: Optional[bytes] = None """ The raw data content of the file. """ class Uebertragungsweg(str, Enum): """ Represents the transmission path. """ DIREKT = 'direkt' LINK = 'link' SAMMELLINK = 'sammellink' # @Api(Description="The data packet from the retrieval operation.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Datenpaket: """ The data packet from the retrieval operation. """ # @ApiMember(Description="Encoded (compressed and encrypted) requested data record") value: Optional[str] = None """ Encoded (compressed and encrypted) requested data record """ # @Api(Description="Represents the download of requested records. The downloaded content from the web server takes place: a) with https b) on port 443 c) on datenabholung1.elster.de or datenabholung2.elster.de. The HTTP Basic Authentication mechanism according to RFC 2617 is used for authentication.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Download: """ Represents the download of requested records. The downloaded content from the web server takes place: a) with https b) on port 443 c) on datenabholung1.elster.de or datenabholung2.elster.de. The HTTP Basic Authentication mechanism according to RFC 2617 is used for authentication. """ # @ApiMember(Description="The link to the data on the web server.") url: Optional[str] = None """ The link to the data on the web server. """ # @ApiMember(Description="The user name for the web server.") benutzer: Optional[str] = None """ The user name for the web server. """ # @ApiMember(Description="Password for the web server.") passwort: Optional[str] = None """ Password for the web server. """ # @Api(Description="Represents the request to retrieve tax assessments by means of a specfied ID.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Abholung: """ Represents the request to retrieve tax assessments by means of a specfied ID. """ # @ApiMember(Description="The identifier of the data record.") id: Optional[str] = None """ The identifier of the data record. """ # @ApiMember(Description="The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'.") idnr: Optional[str] = None """ The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. """ # @ApiMember(Description="The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'.") veranlagungsjahr: Optional[int] = None """ The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. """ # @ApiMember(Description="The transmission path used.") uebertragungsweg: Optional[Uebertragungsweg] = None """ The transmission path used. """ # @ApiMember(Description="The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING.") encoding: Optional[str] = None """ The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING. """ # @ApiMember(Description="The client number; only applicable to the tax type 'ElsterDIVADaten'.") mandantennummer: Optional[str] = None """ The client number; only applicable to the tax type 'ElsterDIVADaten'. """ # @ApiMember(Description="The tax number; only applicable to the tax type 'ElsterDIVADaten'.") steuernummer: Optional[str] = None """ The tax number; only applicable to the tax type 'ElsterDIVADaten'. """ # @ApiMember(Description="The asessment date; only applicable to the tax type 'ElsterDIVADaten'.") bescheiddatum: Optional[datetime.datetime] = None """ The asessment date; only applicable to the tax type 'ElsterDIVADaten'. """ # @ApiMember(Description="Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet.") datenpaket: Optional[Datenpaket] = None """ Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. """ # @ApiMember(Description="Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations.") download: Optional[Download] = None """ Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. """ class Steuerart(str, Enum): """ Represents the various tax types for the retrieval of data. """ ESB = 'ESB' GSB = 'GSB' USB = 'USB' EP_BESCHEID = 'EPBescheid' EP_MITTEILUNG = 'EPMitteilung' GEWERBESTEUERBESCHEID = 'Gewerbesteuerbescheid' GEWERBESTEUERMITTEILUNG = 'Gewerbesteuermitteilung' GEWMB = 'GEWMB' DIVA_ANZEIGE_EINER_LOTTERIE = 'DIVAAnzeigeEinerLotterie' DIVA_BESCHEID = 'DIVABescheid' DIVA_BESCHEID_E_ST = 'DivaBescheidESt' DIVA_BUCHMACHERSTEUER = 'DIVABuchmachersteuer' DIVA_LOTTERIESTEUER_EINMAL = 'DIVALotteriesteuerEinmal' DIVA_LOTTERIESTEUER_MEHR = 'DIVALotteriesteuerMehr' DIVA_SPORTWETTENSTEUER = 'DIVASportwettensteuer' DIVA_TOTALISATOR = 'DIVATotalisator' OZG_BESCHEID = 'OZGBescheid' VERBINDLICHE_AUSKUNFT = 'VerbindlicheAuskunft' VERBINDLICHE_ZUSAGE = 'VerbindlicheZusage' DIVA_SONSTIGER_V_A = 'DivaSonstigerVA' DIVA_BESCHEID_ERB_ST = 'DivaBescheidErbSt' DIVA_BESCHEID_F_E_I_N = 'DivaBescheidFEIN' DIVA_BESCHEID_GEW_ST = 'DivaBescheidGewSt' DIVA_BESCHEID_K_ST = 'DivaBescheidKSt' DIVA_BESCHEID_U_ST = 'DivaBescheidUSt' DIVA_BESCHEID_SCHENK_ST = 'DivaBescheidSchenkSt' DIVA_TRONCABGABE = 'DIVATroncabgabe' DIVA_VIRTUELLE_AUTOMATEN_ST_B = 'DIVAVirtuelleAutomatenStB' DIVA_ONLINE_POKER_ST_B = 'DIVAOnlinePokerStB' L_ST_H_V_V_M_R_M = 'LStHVVMRM' EINLAGENRUECKGEWAEHR_V_A = 'EinlagenrueckgewaehrVA' FTT_MELDUNG_V_A = 'FTTMeldungVA' STATUS_INV_ST_G_V_A = 'StatusInvStGVA' U_ST_V_E_U_V_A = 'UStVEUVA' VERSVA = 'VERSVA' ALT_ZERT_V_A = 'AltZertVA' KAP_E_ST_ENTLASTUNG_V_A = 'KapEStEntlastungVA' POST_U_D_L_V_A = 'PostUDLVA' ST_AB50A_V_A = 'StAb50aVA' ST_AB_ENTLASTUNG_V_A = 'StAbEntlastungVA' KASSENANGELEGENHEITEN_V_A = 'KassenangelegenheitenVA' K_ST_OPT_V_A = 'KStOptVA' STEUEROASENABWEHR_V_A = 'SteueroasenabwehrVA' KDB_VOLLMACHT_R_M = 'KDBVollmachtRM' STBKE = 'STBKE' VDBKDB_RUECKMELDUNG_LIEF = 'VDBKDBRueckmeldungLief' ANHANG_RUECKMELDUNG = 'AnhangRueckmeldung' DIVA_EINWILLIGUNG_R_M = 'DivaEinwilligungRM' GLUECKSPIEL_F = 'GlueckspielF' OZG_MITTEILUNG = 'OZGMitteilung' VERBINDLICHE_AUSKUNFT_INFO_F = 'VerbindlicheAuskunftInfoF' ELO_PROTOKOLL = 'ELOProtokoll' class Coding(str, Enum): """ Specifies the encoding of the metadata. """ TEXT = 'text' BASE64 = 'base64' # @Api(Description="Represents the metadata of a data record.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Meta17: """ Represents the metadata of a data record. """ # @ApiMember(Description="The type of metadata, e.g. datei [file]") name: Optional[str] = None """ The type of metadata, e.g. datei [file] """ # @ApiMember(Description="The encoding of the metadata (text or base64)") coding: Optional[Coding] = None """ The encoding of the metadata (text or base64) """ # @ApiMember(Description="The content of the metadata") value: Optional[str] = None """ The content of the metadata """ @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class MetaInfoMaps17: """ Represents a list of meta information maps. """ pass # @Api(Description="Represents meta information.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class MetaInformationen17: """ Represents meta information. """ # @ApiMember(Description="List of metadata.") meta: Optional[List[Meta17]] = None """ List of metadata. """ # @ApiMember(Description="List of meta infomation maps.") meta_info_maps: Optional[MetaInfoMaps17] = None """ List of meta infomation maps. """ @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Anhaenge17: """ Represents a list of attachments. """ pass # @Api(Description="Represents a request to retrieve data records by means of one or more IDs.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Abholung17(Abholung): """ Represents a request to retrieve data records by means of one or more IDs. """ # @ApiMember(Description="The tax type (e.g. ESB) of the data record.") steuerart: Optional[Steuerart] = None """ The tax type (e.g. ESB) of the data record. """ # @ApiMember(Description="The meta information of the identifier.") meta_informationen: Optional[MetaInformationen17] = None """ The meta information of the identifier. """ # @ApiMember(Description="Die Transfertickets der Datensaetze. Es duerfen max. 100 Bereitstellungstickets in einem Request angegeben werden.") bereitstellungsticket: Optional[str] = None """ Die Transfertickets der Datensaetze. Es duerfen max. 100 Bereitstellungstickets in einem Request angegeben werden. """ # @ApiMember(Description="The attachments of the data records.") anhaenge: Optional[Anhaenge17] = None """ The attachments of the data records. """ # @ApiMember(Description="The identifier of the data record.") id: Optional[str] = None """ The identifier of the data record. """ # @ApiMember(Description="The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'.") idnr: Optional[str] = None """ The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. """ # @ApiMember(Description="The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'.") veranlagungsjahr: Optional[int] = None """ The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. """ # @ApiMember(Description="The transmission path used.") uebertragungsweg: Optional[Uebertragungsweg] = None """ The transmission path used. """ # @ApiMember(Description="The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING.") encoding: Optional[str] = None """ The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING. """ # @ApiMember(Description="The client number; only applicable to the tax type 'ElsterDIVADaten'.") mandantennummer: Optional[str] = None """ The client number; only applicable to the tax type 'ElsterDIVADaten'. """ # @ApiMember(Description="The tax number; only applicable to the tax type 'ElsterDIVADaten'.") steuernummer: Optional[str] = None """ The tax number; only applicable to the tax type 'ElsterDIVADaten'. """ # @ApiMember(Description="The asessment date; only applicable to the tax type 'ElsterDIVADaten'.") bescheiddatum: Optional[datetime.datetime] = None """ The asessment date; only applicable to the tax type 'ElsterDIVADaten'. """ # @ApiMember(Description="Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet.") datenpaket: Optional[Datenpaket] = None """ Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. """ # @ApiMember(Description="Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations.") download: Optional[Download] = None """ Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. """ # @Api(Description="Represents a base service request to retrieve processing records from specified tax statements.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BatchProtokollRequestBase(IReturn[List[ProtokollResponse]], IPost): """ Represents a base service request to retrieve processing records from specified tax statements. """ # @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat") zertifikat: Optional[PortalCertificate] = None """ The authentification certificate. """ @staticmethod def response_type(): return List[ProtokollResponse] # @Api(Description="Represents a base service request to retrieve processing records from specified tax statements. Applicable to version 17..") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BatchProtokollRequestBase17(BatchProtokollRequestBase): """ Represents a base service request to retrieve processing records from specified tax statements. Applicable to version 17.. """ # @ApiMember(Description="The tax assessements, whose processing records shall be obtained.", Name="Bescheide") bescheide: Optional[List[Abholung17]] = None """ The tax assessements, whose processing records shall be obtained. """ # @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat") zertifikat: Optional[PortalCertificate] = None """ The authentification certificate. """ class IHasIndex: index: int = 0 # @Api(Description="Stellt einen Nutzdatensatz-Fehler dar. Dabei besteht der Fehler aus: - einer laufenden Nummer(Attribut zum NdSFehler)- der KmId (Attribut zum NdSFehler) und/oder dem ordnungsMerkmal (Attribut zum NdSFehler)- einem Fehlernummer (Attribut zum NdSFehler)- einem Fehlertext (Inhalt des Tag NdSFehler)") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class NdSFehler06: """ Stellt einen Nutzdatensatz-Fehler dar. Dabei besteht der Fehler aus: - einer laufenden Nummer(Attribut zum NdSFehler)- der KmId (Attribut zum NdSFehler) und/oder dem ordnungsMerkmal (Attribut zum NdSFehler)- einem Fehlernummer (Attribut zum NdSFehler)- einem Fehlertext (Inhalt des Tag NdSFehler) """ # @ApiMember(Description="Die laufende Nummer des fehlerhaften Datensatzes in einem Nutzdatenblock.", Name="LfdNr") lfd_nr: Optional[str] = None """ Die laufende Nummer des fehlerhaften Datensatzes in einem Nutzdatenblock. """ # @ApiMember(Description="Bei der kmId handelt es sich um die durch den Verfasser vorgegebene KmId des Nutzdatensatzes.", Name="KmId") km_id: Optional[str] = None """ Bei der kmId handelt es sich um die durch den Verfasser vorgegebene KmId des Nutzdatensatzes. """ # @ApiMember(Description="Die durch den Verfasser vorgegebene bundesweit eindeutige Identifikation des Nutzdatensatzes (z.B. bei LStB, Lohnersatzleistungen).", Name="OrdnungsMerkmal") ordnungs_merkmal: Optional[str] = None """ Die durch den Verfasser vorgegebene bundesweit eindeutige Identifikation des Nutzdatensatzes (z.B. bei LStB, Lohnersatzleistungen). """ # @ApiMember(Description="Es wird die vom Elstersystem für diesen Fehler vergebene Fehlernummer i.d.R. eine 9-stellige Nummer zurückgemeldet.", Name="FehlerNummer") fehler_nummer: Optional[int] = None """ Es wird die vom Elstersystem für diesen Fehler vergebene Fehlernummer i.d.R. eine 9-stellige Nummer zurückgemeldet. """ # @ApiMember(Description="Es wird der vom Elstersystem für diesen Fehler vergebene Fehlertext zurückgemeldet.", Name="FehlerText") fehler_text: Optional[str] = None """ Es wird der vom Elstersystem für diesen Fehler vergebene Fehlertext zurückgemeldet. """ # @Api(Description="Stellt ein Element eines Nutztdatenblockes dar.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Nutzdatenblock06: """ Stellt ein Element eines Nutztdatenblockes dar. """ # @ApiMember(Description="Über das Nutzdatenticket im Verarbeitungsprotokoll wird der Nutzdatenblock aus der Datenlieferung referenziert.") nutzdaten_ticket: Optional[str] = None """ Über das Nutzdatenticket im Verarbeitungsprotokoll wird der Nutzdatenblock aus der Datenlieferung referenziert. """ # @ApiMember(Description="Der Statuscode zum Nutzdatenblock.") code: Optional[int] = None """ Der Statuscode zum Nutzdatenblock. """ # @ApiMember(Description="Der Statustext zum Nutzdatenblock.") text: Optional[str] = None """ Der Statustext zum Nutzdatenblock. """ # @ApiMember(Description="Anzahl der Verarbeiteten Nutzdatensätze.") verarbeitete_nds: Optional[int] = None """ Anzahl der Verarbeiteten Nutzdatensätze. """ # @ApiMember(Description="Anzahl der nichtverarbeiteten Nutzdatensätze.") nichtverarbeitete_nds: Optional[int] = None """ Anzahl der nichtverarbeiteten Nutzdatensätze. """ # @ApiMember(Description="Der Datenteil des Protokolls.") nd_s_fehler: Optional[List[NdSFehler06]] = None """ Der Datenteil des Protokolls. """ # @Api(Description="Stellt den Datenteil eines Protokolls dar.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class DatenTeil06: """ Stellt den Datenteil eines Protokolls dar. """ # @ApiMember(Description="Das Transferticket der Datenlieferung.") transfer_ticket: Optional[str] = None """ Das Transferticket der Datenlieferung. """ # @ApiMember(Description="Der Statuscode zur gesamten Datenlieferung. 0 (Datenlieferung ok - Alle Datensätze konnten verarbeitet werden). 1 (Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden). 2 (Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft). 3 (Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant).") code: Optional[int] = None """ Der Statuscode zur gesamten Datenlieferung. 0 (Datenlieferung ok - Alle Datensätze konnten verarbeitet werden). 1 (Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden). 2 (Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft). 3 (Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant). """ # @ApiMember(Description="Der Datenteil des Protokolls.Datenlieferung ok - Alle Datensätze konnten verarbeitet werden. Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden. Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft. 3Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant.") text: Optional[str] = None """ Der Datenteil des Protokolls.Datenlieferung ok - Alle Datensätze konnten verarbeitet werden. Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden. Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft. 3Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant. """ # @ApiMember(Description="Der Datenteil des Protokolls.") nutzdatenbloecke: Optional[List[Nutzdatenblock06]] = None """ Der Datenteil des Protokolls. """ # @Api(Description="Das Verarbeitungsprotokoll einer Datenabholungsprozesses.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Protokoll06: """ Das Verarbeitungsprotokoll einer Datenabholungsprozesses. """ # @ApiMember(Description="Version des Protokolls.", Name="Version") version: Optional[int] = None """ Version des Protokolls. """ # @ApiMember(Description="Der Zeitstempel der Protokoll-Aufbereitung. Es wird der Zeitstempel der serverseitigen Verarbeitung der Protokollanfrage zurück übermittelt. Das String-Format des ZeitStempels lautet: JJJJMMTThhmmss.", Name="ZeitStempel") zeit_stempel: Optional[datetime.datetime] = None """ Der Zeitstempel der Protokoll-Aufbereitung. Es wird der Zeitstempel der serverseitigen Verarbeitung der Protokollanfrage zurück übermittelt. Das String-Format des ZeitStempels lautet: JJJJMMTThhmmss. """ # @ApiMember(Description="Der Datenteil des Protokolls.", Name="DatenTeil") daten_teil: Optional[DatenTeil06] = None """ Der Datenteil des Protokolls. """ # @Api(Description="Specifies a service response from an ERiC service operation.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ServiceReponseBase(IHasIndex): """ Specifies a service response from an ERiC service operation. """ # @ApiMember(Description="The unique identifier of the response.", Name="Id") id: Optional[str] = None """ The unique identifier of the response. """ # @ApiMember(Description="The position of the response element in an indexed collection.", Name="Index") index: int = 0 """ The position of the response element in an indexed collection. """ # @ApiMember(Description="Metadata that contains structured error information on the service response.", Name="ResponseStatus") response_status: Optional[ResponseStatus] = None """ Metadata that contains structured error information on the service response. """ class ISecuredCertificate: pin: Optional[str] = None # @Api(Description="Represents a type that encapulates the processing records of a tax statement.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ProtokollResponse(ServiceReponseBase): """ Represents a type that encapulates the processing records of a tax statement. """ # @ApiMember(Description="The processing record of a tax statement.", Name="Protokoll") protokoll: Optional[Protokoll06] = None """ The processing record of a tax statement. """ # @ApiMember(Description="The unique identifier of the response.", Name="Id") id: Optional[str] = None """ The unique identifier of the response. """ # @ApiMember(Description="The position of the response element in an indexed collection.", Name="Index") index: int = 0 """ The position of the response element in an indexed collection. """ # @ApiMember(Description="Metadata that contains structured error information on the service response.", Name="ResponseStatus") response_status: Optional[ResponseStatus] = None """ Metadata that contains structured error information on the service response. """ # @Route("/datenabholungen/protokolle/17/verarbeitungsprotokoll/batch", "POST") # @Api(Description="Represents the service request to retrieve logs about tax statements.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BatchProtokollRequest17(BatchProtokollRequestBase17, IReturn[List[ProtokollResponse]]): """ Represents the service request to retrieve logs about tax statements. """ # @ApiMember(Description="The tax assessements, whose processing records shall be obtained.", Name="Bescheide") bescheide: Optional[List[Abholung17]] = None """ The tax assessements, whose processing records shall be obtained. """ # @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat") zertifikat: Optional[PortalCertificate] = None """ The authentification certificate. """