/* Options: Date: 2026-08-27 08:11:45 SwiftVersion: 6.0 Version: 10.08 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: GetUsers.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/users", "GET") public class GetUsers : IReturn, IPagedRequest, Codable { public typealias Return = GetUsersResponse /** * Index of the result set returned */ // @ApiMember(Description="Index of the result set returned", IsRequired=true) public var page:Int? /** * Size of the result set returned */ // @ApiMember(Description="Size of the result set returned", IsRequired=true) public var items:Int? /** * Omit precise record count - save on performance */ // @ApiMember(Description="Omit precise record count - save on performance") public var noCount:Bool? /** * Sorting expression */ // @ApiMember(Description="Sorting expression") public var sortBy:String? /** * Email address */ // @ApiMember(Description="Email address") public var email:String? /** * Also retreive users with locked account */ // @ApiMember(Description="Also retreive users with locked account") public var includeLockedAccounts:Bool? /** * Filter users whose LastLoggedOnDate is greater than or equal to this date (Format: yyyy-MM-dd) */ // @ApiMember(Description="Filter users whose LastLoggedOnDate is greater than or equal to this date (Format: yyyy-MM-dd)") public var lastLoggedOnDateFrom:Date? /** * Filter users whose LastLoggedOnDate is less than or equal to this date (Format: yyyy-MM-dd) */ // @ApiMember(Description="Filter users whose LastLoggedOnDate is less than or equal to this date (Format: yyyy-MM-dd)") public var lastLoggedOnDateTo:Date? /** * Filter by User Type (1 or 2) */ // @ApiMember(Description="Filter by User Type (1 or 2)") public var userType:Int? required public init(){} } public class GetUsersResponse : Codable { /** * Index of the result set returnedr */ // @ApiMember(Description="Index of the result set returnedr", IsRequired=true) public var page:Int? /** * Size of the result set returned */ // @ApiMember(Description="Size of the result set returned", IsRequired=true) public var items:Int? /** * Total amount of pages / result sets */ // @ApiMember(Description="Total amount of pages / result sets", IsRequired=true) public var totalPages:Int? /** * Total amount of results */ // @ApiMember(Description="Total amount of results", IsRequired=true) public var totalResults:Int? /** * List of Users */ // @ApiMember(Description="List of Users", IsRequired=true) public var elements:[GetUserResponse]? required public init(){} } public protocol IPagedRequest { var page:Int? { get set } var items:Int? { get set } var noCount:Bool? { get set } var sortBy:String? { get set } } public class GetUserResponse : Codable { /** * Unique Identifier of a User */ // @ApiMember(Description="Unique Identifier of a User", IsRequired=true) public var userId:String? /** * User's Email address */ // @ApiMember(Description="User's Email address", IsRequired=true) public var emailAddress:String? /** * First Name */ // @ApiMember(Description="First Name", IsRequired=true) public var firstName:String? /** * Last Name */ // @ApiMember(Description="Last Name", IsRequired=true) public var lastName:String? /** * User's Password Expiration Date */ // @ApiMember(Description="User's Password Expiration Date") public var passwordExpirationDate:String? /** * If the User must change the password */ // @ApiMember(Description="If the User must change the password", IsRequired=true) public var passwordMustBeChanged:Bool? /** * User Type of the User */ // @ApiMember(Description="User Type of the User", IsRequired=true) public var userType:String? /** * Culture ID of the User */ // @ApiMember(Description="Culture ID of the User", IsRequired=true) public var culture:String? /** * If the User account is locked */ // @ApiMember(Description="If the User account is locked", IsRequired=true) public var accountLocked:Bool? required public init(){} }