/* Options: Date: 2026-07-13 12:43:06 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: UpdateVossSubscriptionScheduledChange.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/voss/subscriptions/{SubscriptionId}/scheduledChanges/{Id}", "PUT") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) public class UpdateVossSubscriptionScheduledChange : IReturn, Codable { public typealias Return = SubscriptionScheduledChangeResult /** * The subscription id */ // @ApiMember(Description="The subscription id", IsRequired=true) public var subscriptionId:String? /** * The subscription scheduled change id */ // @ApiMember(Description="The subscription scheduled change id", IsRequired=true) public var id:String? /** * Controls when the scheduled change will be executed: <br />AtSubscriptionBillingPeriodEnd - after the currently latest subscription billing period ends <br />AtBindingPeriodEnd - after the currently latest subscription binding period ends */ // @ApiMember(Description="Controls when the scheduled change will be executed: <br />AtSubscriptionBillingPeriodEnd - after the currently latest subscription billing period ends <br />AtBindingPeriodEnd - after the currently latest subscription binding period ends", IsRequired=true) public var type:TypeEnum? /** * Optional package version id; if omitted the current version of the subscription package is used */ // @ApiMember(Description="Optional package version id; if omitted the current version of the subscription package is used") public var versionId:String? /** * The id of a package which will be active after the scheduled change is executed; if provided the tier id and plan id have to be provided as well */ // @ApiMember(Description="The id of a package which will be active after the scheduled change is executed; if provided the tier id and plan id have to be provided as well") public var packageId:String? /** * The id of a tier which will be active after the scheduled change is executed; can be omitted if PlanId is provided instead */ // @ApiMember(Description="The id of a tier which will be active after the scheduled change is executed; can be omitted if PlanId is provided instead") public var tierId:String? /** * The id of a plan which will be active after the scheduled change is executed; can be omitted if TierId is provided instead */ // @ApiMember(Description="The id of a plan which will be active after the scheduled change is executed; can be omitted if TierId is provided instead") public var planId:String? /** * How many periods (counting from the latest period) must pass before the scheduled change is executed; if omitted the change is executed on the latest period end */ // @ApiMember(Description="How many periods (counting from the latest period) must pass before the scheduled change is executed; if omitted the change is executed on the latest period end") public var periodIterationCount:Int? required public init(){} } // @DataContract(Name="SubscriptionScheduledChangeResult") public class SubscriptionScheduledChangeResult : Codable { // @DataMember(Name="type") public var type:TypeEnum? // @DataMember(Name="status", IsRequired=true) public var status:StatusEnum? // @DataMember(Name="id", IsRequired=true) public var id:String? // @DataMember(Name="package") public var package:SubscriptionScheduledChangePackageResult? // @DataMember(Name="tier") public var tier:SubscriptionScheduledChangeTierResult? // @DataMember(Name="plan") public var plan:SubscriptionScheduledChangePlanResult? // @DataMember(Name="scheduledDate", IsRequired=true) public var scheduledDate:Date? // @DataMember(Name="salesInformation") public var salesInformation:SubscriptionScheduledChangeSalesInformationResult? required public init(){} } public enum TypeEnum : String, Codable { case AtSubscriptionBillingPeriodEnd case AtBindingPeriodEnd } public enum StatusEnum : String, Codable { case Active case Terminated } // @DataContract(Name="SubscriptionScheduledChangePackageResult") public class SubscriptionScheduledChangePackageResult : Codable { // @DataMember(Name="id", IsRequired=true) public var id:String? // @DataMember(Name="versionId", IsRequired=true) public var versionId:String? // @DataMember(Name="name", IsRequired=true) public var name:String? required public init(){} } // @DataContract(Name="SubscriptionScheduledChangeTierResult") public class SubscriptionScheduledChangeTierResult : Codable { // @DataMember(Name="id", IsRequired=true) public var id:String? // @DataMember(Name="name", IsRequired=true) public var name:String? required public init(){} } // @DataContract(Name="SubscriptionScheduledChangePlanResult") public class SubscriptionScheduledChangePlanResult : Codable { // @DataMember(Name="id", IsRequired=true) public var id:String? // @DataMember(Name="name", IsRequired=true) public var name:String? required public init(){} } // @DataContract(Name="SubscriptionScheduledChangeSalesInformationResult") public class SubscriptionScheduledChangeSalesInformationResult : Codable { // @DataMember(Name="salesPersonId") public var salesPersonId:String? // @DataMember(Name="salesDepartmentId") public var salesDepartmentId:String? required public init(){} }