""" Options: Date: 2025-03-15 04:41:20 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: GetDbsSearch.* #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 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 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 ApplicantInformation: name: Optional[str] = None date_of_birth: Optional[str] = None email: Optional[str] = None mobile_international: Optional[str] = None job_location: Optional[str] = None reference: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class DbsSearchSummary: id: int = 0 date_searched: datetime.datetime = datetime.datetime(1, 1, 1) date_updated: datetime.datetime = datetime.datetime(1, 1, 1) status: Optional[str] = None disclosure_status: Optional[str] = None is_applicant_info_completed: bool = False is_id_check_completed: bool = False is_application_completed: bool = False is_application_submitted: bool = False is_application_disclosed: bool = False disclosure_level: Optional[str] = None applicant_information: Optional[ApplicantInformation] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetDbsSearchData(BaseResponse, IBaseSearchResponse): linked_to: Optional[ArrayOfLinkedTo] = None summary: Optional[DbsSearchSummary] = None class IBaseDataResponse: response_status: Optional[ResponseStatus] = None class IHasResponseStatus: response_status: Optional[ResponseStatus] = None class IBaseSearchResponse(IBaseDataResponse): linked_to: Optional[ArrayOfLinkedTo] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetDbsSearchResponse: data: Optional[GetDbsSearchData] = None # @Route("/dbs/{Id}", "GET") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetDbsSearch(BaseRequest, IReturn[GetDbsSearchResponse]): # @ApiMember(Description="The ID of the DBS Search", IsRequired=true, ParameterType="path") id: int = 0 """ The ID of the DBS Search """ # @ApiMember(Description="Provide a value to only return a search that the specified sub user has permission to access. If this is null or empty, then sub user permissions will not be enforced and the search will be returned", ParameterType="query") sub_user_name: Optional[str] = None """ Provide a value to only return a search that the specified sub user has permission to access. If this is null or empty, then sub user permissions will not be enforced and the search will be returned """