/* Options: Date: 2025-07-01 07:15:11 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CompanyIncentiveQuery.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/companies/{CompanyId}/incentives", Verbs="GET") @ValidateRequest(Validator="IsAuthenticated") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) open class CompanyIncentiveQuery : IReturn, ICompany { /** * The company id, if empty will use the company id for the user you are logged in with. */ @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.", IsRequired=true, ParameterType="path") var CompanyId:UUID? = null companion object { private val responseType = CompanyIncentivesQueryResponse::class.java } override fun getResponseType(): Any? = CompanyIncentiveQuery.responseType } open class CompanyIncentivesQueryResponse { var Incentives:IList? = null var CompanyId:UUID? = null } open interface ICompany { var CompanyId:UUID? } enum class IncentiveRecurrenceFrequency(val value:Int) { OneTime(1), Weekly(2), Monthly(3), } open class IncentiveCriteriaDto { var CriteriaType:CriteriaType? = null var Value:String? = null var InvertCondition:Boolean? = null } open class CompanyIncentiveResponse { var Id:Int? = null var Heading:String? = null var StorageUrl:String? = null var SuccessButtonText:String? = null var ActionId:Int? = null var InitialDelayInSeconds:Int? = null var MaxDisplayCount:Int? = null var ValidFrom:Date? = null var ValidTo:Date? = null var Action:IncentiveActionResponse? = null var Payload:String? = null @ApiMember() var Body:String? = null @ApiMember(IsRequired=true) var Frequency:IncentiveRecurrenceFrequency? = null @ApiMember(IsRequired=true) var InitialDeferredDays:Int? = null @ApiMember() var RecurrenceInterval:Long? = null @ApiMember() var Active:Boolean? = null var CompanyIds:ArrayList = ArrayList() var Criteria:ArrayList = ArrayList() } enum class CriteriaType { LicenseAvailability, SmsActivation, EAccountingActivation, CodeLockActivation, SocialActivation, OnlinePaymentActivation, FollowUpMessageActivation, RatingActivation, } open class IncentiveActionResponse { var Id:Int? = null var Description:String? = null var ActionType:IncentiveActionType? = null var Page:String? = null var Segment:String? = null var Element:String? = null var LicenseTypeId:Int? = null var SuggestedLicenseToUpgrade:LicenseTypeQueryResponse? = null }