""" Options: Date: 2026-01-25 01:04:17 Version: 8.90 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://taxfiling.staging.pwc.de #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: GetPortalCertificatePinStatusAsync.* #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 Object = TypeVar('Object') # @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 in bytes.", Name="Content") content: Optional[bytes] = None """ The raw data content of the file in bytes. """ # @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): """ Represents a portal certificate that is protected by a password. """ # @ApiMember(Description="The file name of the certificate.") # @StringLength(128) name: Optional[str] = None """ The file name of the certificate. """ # @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: List[str] = field(default_factory=list) """ Tags that can be used to label or identify the certificate. """ class EricKeyType(str, Enum): """ Represents the key type for a password-protected area. """ ESIGNATURE_KEY = 'eSIGNATURE_KEY' EENCRYPTION_KEY = 'eENCRYPTION_KEY' # @Api(Description="A base service to get the PIN status of a password-protected portal certificate.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetPortalCertificatePinStatusBase(IReturn[GetPinStatusResponse], IPost): """ A base service to get the PIN status of a password-protected portal certificate. """ # @ApiMember(Description="The portal certificate, whose PIN status is determined.") zertifikat: Optional[PortalCertificate] = None """ The portal certificate, whose PIN status is determined. """ # @ApiMember(Description="The option for the selection of the key-pair.") key_type: Optional[EricKeyType] = None """ The option for the selection of the key-pair. """ @staticmethod def response_type(): return GetPinStatusResponse class EricPinStatus(str, Enum): """ Represents the PIN status. """ STATUS_PIN_OK = 'STATUS_PIN_OK' STATUS_PIN_LOCKED = 'STATUS_PIN_LOCKED' STATUS_PREVIOUS_PIN_ERROR = 'STATUS_PREVIOUS_PIN_ERROR' STATUS_LOCKED_IF_PIN_ERROR = 'STATUS_LOCKED_IF_PIN_ERROR' class ISecuredCertificate: pin: Optional[str] = None # @Api(Description="Represent a base response that encapsulate any ERiC API function return value.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class EricFehlerCodeResponse(ServiceReponseBase): """ Represent a base response that encapsulate any ERiC API function return value. """ # @ApiMember(Description="The status code that the ERiC API function returns.") status_code: Optional[EricFehlerCode] = None """ The status code that the ERiC API function returns. """ # @ApiMember(Description="The status message that the ERiC API function returns.") status_text: Optional[str] = None """ The status message that the ERiC API function returns. """ # @Api(Description="Represents a type that encapsulates the return values of the ERiC API function that obtains the PIN status of a given certificate.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetPinStatusResponse(EricFehlerCodeResponse): """ Represents a type that encapsulates the return values of the ERiC API function that obtains the PIN status of a given certificate. """ # @ApiMember(Description="The PIN status of the provided certificate.", Name="PinStatus") pin_status: Optional[EricPinStatus] = None """ The PIN status of the provided certificate. """ # @Route("/GetPortalCertificatePinStatusAsync", "POST") # @Api(Description="An asynchronous service to get the PIN status of a password-protected portal certificate.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetPortalCertificatePinStatusAsync(GetPortalCertificatePinStatusBase, IReturn[GetPinStatusResponse]): """ An asynchronous service to get the PIN status of a password-protected portal certificate. """ pass