""" Options: Date: 2025-03-15 13:16:03 Version: 8.30 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://api.sanctionssearch.com/v2 #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: AddValidIdTemplate.* #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 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Authentication: # @ApiMember(Description="The API User ID provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body") api_user_id: Optional[str] = None """ The API User ID provided by us when you signed up to use our API """ # @ApiMember(Description="The API User Key provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body") api_user_key: Optional[str] = None """ The API User Key provided by us when you signed up to use our API """ @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BaseRequest(IBaseRequest): # @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body") authentication: Optional[Authentication] = None """ The authentication credentials """ class IBaseRequest: authentication: Optional[Authentication] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ArrayOfLists(List[str]): pass @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class LinkedTo: client_id: Optional[int] = None id: Optional[int] = None type: Optional[str] = None subtype: Optional[str] = None status: Optional[str] = None description: Optional[str] = None is_archived: Optional[bool] = None name: Optional[str] = None date: Optional[datetime.datetime] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ArrayOfLinkedTo(List[LinkedTo]): pass @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdBasicRequest: name1: Optional[str] = None name2: Optional[str] = None name3: Optional[str] = None date_of_birth: Optional[datetime.datetime] = None gender: Optional[str] = None address1: Optional[str] = None address2: Optional[str] = None address3: Optional[str] = None address4: Optional[str] = None address5: Optional[str] = None post_code: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdPassportRequest: passport1: Optional[str] = None passport2: Optional[str] = None passport3: Optional[str] = None passport4: Optional[str] = None passport5: Optional[str] = None passport6: Optional[str] = None passport7: Optional[str] = None passport8: Optional[str] = None passport_mrz_line_one1: Optional[str] = None passport_mrz_line_one2: Optional[str] = None passport_mrz_line_one3: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdDrivingRequest: driving1: Optional[str] = None driving2: Optional[str] = None driving3: Optional[str] = None driving_postcode: Optional[str] = None driving_mail_sort: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdBirthRequest: birth_fore_name: Optional[str] = None birth_middle_name: Optional[str] = None birth_surname: Optional[str] = None birth_maiden_name: Optional[str] = None birth_district: Optional[str] = None birth_cert_issue_num: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdNIRequest: ni_number: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdNHSRequest: nhs_number: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdElectricityRequest: mpan_number1: Optional[str] = None mpan_number2: Optional[str] = None mpan_number3: Optional[str] = None mpan_number4: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdBankRequest: bank_sort_code: Optional[str] = None bank_account_number: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdCardNumberRequest: card_number: Optional[str] = None card_type: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdTravelVisaRequest: travel_visa1: Optional[str] = None travel_visa2: Optional[str] = None travel_visa3: Optional[str] = None travel_visa4: Optional[str] = None travel_visa5: Optional[str] = None travel_visa6: Optional[str] = None travel_visa7: Optional[str] = None travel_visa8: Optional[str] = None travel_visa9: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdIdCardRequest: id_card1: Optional[str] = None id_card2: Optional[str] = None id_card3: Optional[str] = None id_card4: Optional[str] = None id_card5: Optional[str] = None id_card6: Optional[str] = None id_card7: Optional[str] = None id_card8: Optional[str] = None id_card9: Optional[str] = None id_card10: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdPollNumberRequest: poll_number: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ValidIdMarriageRequest: forename: Optional[str] = None surname: Optional[str] = None partner_forename: Optional[str] = None partner_surname: Optional[str] = None date: Optional[str] = None district: Optional[str] = None cert_issue_num: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AddValidIdRequest: # @ApiMember(Description="If the search should be saved against a single Sub User account, specify their username here") sub_user_name: Optional[str] = None """ If the search should be saved against a single Sub User account, specify their username here """ type: Optional[str] = None add_pep_search: bool = False pep_search_type: Optional[str] = None add_sanctions_search: bool = False selected_lists: Optional[ArrayOfLists] = None reference: Optional[str] = None # @ApiMember(Description="If the search should be linked to other searches, specify the them here") linked_to: Optional[ArrayOfLinkedTo] = None """ If the search should be linked to other searches, specify the them here """ basic_request: Optional[ValidIdBasicRequest] = None passport_request: Optional[ValidIdPassportRequest] = None driving_request: Optional[ValidIdDrivingRequest] = None birth_request: Optional[ValidIdBirthRequest] = None ni_request: Optional[ValidIdNIRequest] = None nhs_request: Optional[ValidIdNHSRequest] = None electricity_request: Optional[ValidIdElectricityRequest] = None bank_request: Optional[ValidIdBankRequest] = None card_number_request: Optional[ValidIdCardNumberRequest] = None travel_visa_request: Optional[ValidIdTravelVisaRequest] = None id_card_request: Optional[ValidIdIdCardRequest] = None poll_number_request: Optional[ValidIdPollNumberRequest] = None marriage_request: Optional[ValidIdMarriageRequest] = None passport_enabled: bool = False passport_chip_enabled: bool = False driving_enabled: bool = False smartlink_enabled: bool = False ni_enabled: bool = False nhs_enabled: bool = False electricity_enabled: bool = False bank_enabled: bool = False credit_active_enabled: bool = False id_card_enabled: bool = False bank_live_enabled: bool = False company_director_enabled: bool = False search_activity_enabled: bool = False prs_enabled: bool = False @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BaseResponse(IBaseDataResponse, IHasResponseStatus): # @ApiMember(Description="The status of the response") response_status: Optional[ResponseStatus] = None """ The status of the response """ @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AddValidIdTemplateData(BaseResponse): request: Optional[AddValidIdRequest] = None class IBaseDataResponse: response_status: Optional[ResponseStatus] = None class IHasResponseStatus: response_status: Optional[ResponseStatus] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AddValidIdTemplateResponse: data: Optional[AddValidIdTemplateData] = None # @Route("/validid/template", "GET") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AddValidIdTemplate(BaseRequest, IReturn[AddValidIdTemplateResponse]): # @ApiMember(IsRequired=true) client_id: int = 0