/* Options: Date: 2026-06-12 23:54:08 SwiftVersion: 6.0 Version: 10.05 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: ApiKeyQuery.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/apikeys", "GET") // @ApiResponse(Description="Returned if the current user is not authenticated", StatusCode=401) // @ApiResponse(Description="Returned if the current user does not have the required role", StatusCode=403) public class ApiKeyQuery : IReturn, ICompany, Codable { public typealias Return = ApiKeyQueryResponse /** * The company to list API keys for. Defaults to the logged in user's company. Only a SuperAdmin may specify a company other than their own; for other roles this value is ignored. */ // @ApiMember(Description="The company to list API keys for. Defaults to the logged in user's company. Only a SuperAdmin may specify a company other than their own; for other roles this value is ignored.", ParameterType="query") public var companyId:String? /** * If true, only return keys that are active (not cancelled and not expired). Default is false (return all). */ // @ApiMember(DataType="boolean", Description="If true, only return keys that are active (not cancelled and not expired). Default is false (return all).", ParameterType="query") public var activeOnly:Bool? required public init(){} } public class ApiKeyQueryResponse : Codable { /** * The API keys for the company */ // @ApiMember(Description="The API keys for the company") public var apiKeys:[ApiKeyResponse] = [] public var responseStatus:ResponseStatus? required public init(){} } public protocol ICompany { var companyId:String? { get set } } public class ApiKeyResponse : Codable { /** * The company the API key belongs to */ // @ApiMember(Description="The company the API key belongs to") public var companyId:String? /** * The API key value to send in the x-api-key header */ // @ApiMember(Description="The API key value to send in the x-api-key header") public var apiKey:String? /** * Whether the key is active */ // @ApiMember(Description="Whether the key is active") public var active:Bool? /** * When the key was created */ // @ApiMember(Description="When the key was created") public var createdDate:Date? /** * When the key expires, if ever */ // @ApiMember(Description="When the key expires, if ever") public var expiryDate:Date? /** * Contact email registered for the key */ // @ApiMember(Description="Contact email registered for the key") public var contactEmail:String? /** * Free text notes for the key */ // @ApiMember(Description="Free text notes for the key") public var notes:String? /** * Comma separated list of IP addresses the key is restricted to, if any */ // @ApiMember(Description="Comma separated list of IP addresses the key is restricted to, if any") public var allowedIpAddresses:String? required public init(){} }