/* Options: Date: 2025-05-27 19:18:36 SwiftVersion: 5.0 Version: 8.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://active-ewebservice.biz/aeservices30/api //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: SecurityItemsRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack /** * SecurityItemsRequires active-e Service. */ // @Route("/SecurityItems", "GET") // @DataContract public class SecurityItemsRequest : BaseSecureRequest, IReturn { public typealias Return = SecurityItemsResponse /** * Can be ALL to return all security items, HAS to return all items the logged in user has permissions for, or LACKS to return all items the logged in user lacks permissons for. Defaults to HAS if not sent. */ // @DataMember // @ApiMember(DataType="string", Description="Can be ALL to return all security items, HAS to return all items the logged in user has permissions for, or LACKS to return all items the logged in user lacks permissons for. Defaults to HAS if not sent.", Name="Mode") public var mode:String required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case mode } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) mode = try container.decodeIfPresent(String.self, forKey: .mode) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if mode != nil { try container.encode(mode, forKey: .mode) } } } // @DataContract public class SecurityItemsResponse : BaseResponse { // @DataMember public var items:[SecurityItemInfo] = [] required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case items } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) items = try container.decodeIfPresent([SecurityItemInfo].self, forKey: .items) ?? [] } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if items.count > 0 { try container.encode(items, forKey: .items) } } } // @DataContract public class BaseRequest : Codable { /** * This is your AIM API Key provided by Tri-Tech */ // @DataMember // @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header") public var apiKey:String // @DataMember // @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header") public var oAuthToken:String required public init(){} } // @DataContract public class BaseSecureRequest : BaseRequest { /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header") public var token:String /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header") public var deviceId:String /** * */ // @DataMember // @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header") public var appId:String required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case token case deviceId case appId } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) token = try container.decodeIfPresent(String.self, forKey: .token) deviceId = try container.decodeIfPresent(String.self, forKey: .deviceId) appId = try container.decodeIfPresent(String.self, forKey: .appId) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if token != nil { try container.encode(token, forKey: .token) } if deviceId != nil { try container.encode(deviceId, forKey: .deviceId) } if appId != nil { try container.encode(appId, forKey: .appId) } } } // @DataContract public class SecurityItemInfo : Codable { // @DataMember public var securityId:String // @DataMember public var Description:String required public init(){} } // @DataContract public class BaseResponse : Codable { /** * */ // @DataMember // @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body") public var status:BaseResponseResult required public init(){} }