/* 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 //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: AddDbsSearch.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* @Route(Path="/dbs", Verbs="POST") @DataContract open class AddDbsSearch : BaseRequest(), IReturn { @DataMember var request:AddDbsSearchRequest? = null companion object { private val responseType = AddDbsSearchResponse::class.java } override fun getResponseType(): Any? = AddDbsSearch.responseType } @DataContract open class AddDbsSearchResponse { @DataMember @SerializedName("data") var Data:AddDbsSearchData? = null } @DataContract open class Authentication { /** * The API User ID provided by us when you signed up to use our API */ @DataMember @ApiMember(Description="The API User ID provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body") var apiUserId:String? = null /** * The API User Key provided by us when you signed up to use our API */ @DataMember @ApiMember(Description="The API User Key provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body") var apiUserKey:String? = null } @DataContract open class BaseRequest : IBaseRequest { /** * The authentication credentials */ @DataMember @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body") var authentication:Authentication? = null } open interface IBaseRequest { var authentication:Authentication? } open class AddDbsSearchRequest { /** * The full name of the applicant */ @ApiMember(Description="The full name of the applicant", IsRequired=true) var name:String? = null /** * The date of birth for the applicant (DD/MM/YYYY format) */ @ApiMember(Description="The date of birth for the applicant (DD/MM/YYYY format)", IsRequired=true) var dateOfBirth:String? = null /** * The email address of the applicant */ @ApiMember(Description="The email address of the applicant", IsRequired=true) var email:String? = null /** * The applicant's mobile phone number in international format (e.g. '+447123456789') */ @ApiMember(Description="The applicant's mobile phone number in international format (e.g. '+447123456789')", IsRequired=true) var mobileInternational:String? = null /** * The country where the job is located */ @ApiMember(Description="The country where the job is located", IsRequired=true) var jobLocation:String? = null /** * The disclosure level of the DBS required */ @ApiMember(Description="The disclosure level of the DBS required", IsRequired=true) var disclosureLevel:String? = null /** * Your reference, if any */ @ApiMember(Description="Your reference, if any") var reference:String? = null /** * If this is specified, the search will be created for the specified sub user, otherwise it will be created in the main user account */ @ApiMember(Description="If this is specified, the search will be created for the specified sub user, otherwise it will be created in the main user account") var subUserName:String? = null /** * If the search should be linked to other searches, specify the them here */ @ApiMember(Description="If the search should be linked to other searches, specify the them here") var linkedTo:ArrayOfLinkedTo? = null } open class AddDbsSearchData : BaseResponse(), IBaseSearchResponse { var linkedTo:ArrayOfLinkedTo? = null var summary:DbsSearchSummary? = null } open class ArrayOfLinkedTo : ArrayList() { } open class BaseResponse : IBaseDataResponse, IHasResponseStatus { /** * The status of the response */ @ApiMember(Description="The status of the response") var responseStatus:ResponseStatus? = null } open interface IBaseDataResponse { var responseStatus:ResponseStatus? } open interface IHasResponseStatus { var responseStatus:ResponseStatus? } open interface IBaseSearchResponse : IBaseDataResponse { var linkedTo:ArrayOfLinkedTo? } open class DbsSearchSummary { var id:Long? = null var dateSearched:Date? = null var dateUpdated:Date? = null var status:String? = null var disclosureStatus:String? = null var isApplicantInfoCompleted:Boolean? = null var isIdCheckCompleted:Boolean? = null var isApplicationCompleted:Boolean? = null var isApplicationSubmitted:Boolean? = null var isApplicationDisclosed:Boolean? = null var disclosureLevel:String? = null var applicantInformation:ApplicantInformation? = null } open class LinkedTo { var clientId:Int? = null var id:Long? = null @SerializedName("type") var Type:String? = null var subtype:String? = null var status:String? = null var description:String? = null var isArchived:Boolean? = null var name:String? = null var date:Date? = null } open class ArrayOfResponseError : ArrayList() { } open class ApplicantInformation { var name:String? = null var dateOfBirth:String? = null var email:String? = null var mobileInternational:String? = null var jobLocation:String? = null var reference:String? = null }