/* Options: Date: 2025-05-06 13:12:23 SwiftVersion: 5.0 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.sanctionssearch.com/v2 //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: CountIncompleteClients.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/clients/incomplete/count", "GET") // @DataContract public class CountIncompleteClients : BaseRequest, IReturn { public typealias Return = CountIncompleteClientsResponse /** * How many days should have elapsed before counting a Client as incomplete (defaults to 7 days).Set to zero to count all incomplete clients */ // @DataMember // @ApiMember(Description="How many days should have elapsed before counting a Client as incomplete (defaults to 7 days).Set to zero to count all incomplete clients", ParameterType="query") public var daysIncomplete:Int /** * Count clients that match the state specified (only PendingCompletion, or PendingVerification). */ // @DataMember // @ApiMember(Description="Count clients that match the state specified (only PendingCompletion, or PendingVerification).", ParameterType="query") public var state:ClientState /** * Count clients that match the IsValidateMe flag specified (defaults to true). */ // @DataMember // @ApiMember(Description="Count clients that match the IsValidateMe flag specified (defaults to true).", ParameterType="query") public var isValidateMe:Bool required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case daysIncomplete case state case isValidateMe } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) daysIncomplete = try container.decodeIfPresent(Int.self, forKey: .daysIncomplete) state = try container.decodeIfPresent(ClientState.self, forKey: .state) isValidateMe = try container.decodeIfPresent(Bool.self, forKey: .isValidateMe) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if daysIncomplete != nil { try container.encode(daysIncomplete, forKey: .daysIncomplete) } if state != nil { try container.encode(state, forKey: .state) } if isValidateMe != nil { try container.encode(isValidateMe, forKey: .isValidateMe) } } } // @DataContract public class CountIncompleteClientsResponse : Codable { // @DataMember public var data:CountIncompleteClientsData required public init(){} } // @DataContract public class Authentication : Codable { /** * The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User) */ // @DataMember // @ApiMember(Description="The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User)", IsRequired=true, ParameterType="header, body") public var apiUserId:String /** * The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key) */ // @DataMember // @ApiMember(Description="The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key)", IsRequired=true, ParameterType="header, body") public var apiUserKey:String /** * The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id). */ // @DataMember // @ApiMember(Description="The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id).", ParameterType="header, body") public var userId:String required public init(){} } // @DataContract public class BaseRequest : IBaseRequest, Codable { /** * The authentication credentials */ // @DataMember // @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body") public var authentication:Authentication required public init(){} } public protocol IBaseRequest { var authentication:Authentication { get set } } // @DataContract(Name="ClientState", Namespace="http://schemas.servicestack.net/types") public enum ClientState : String, Codable { case Undefined case PendingCompletion case PendingOcr case PendingVerification case Verified } public class CountIncompleteClientsData : BaseResponse { public var numberOfIncompleteClients:Int required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case numberOfIncompleteClients } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) numberOfIncompleteClients = try container.decodeIfPresent(Int.self, forKey: .numberOfIncompleteClients) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if numberOfIncompleteClients != nil { try container.encode(numberOfIncompleteClients, forKey: .numberOfIncompleteClients) } } } public class BaseResponse : IBaseDataResponse, IHasResponseStatus, Codable { /** * The status of the response */ // @ApiMember(Description="The status of the response") public var responseStatus:ResponseStatus required public init(){} } public protocol IBaseDataResponse { var responseStatus:ResponseStatus { get set } } public protocol IHasResponseStatus { var responseStatus:ResponseStatus { get set } } public class ArrayOfResponseError : List { required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } }