| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| PUT | /voss/subscriptions/{SubscriptionId}/scheduledChanges/{Id} | Update voss subscription scheduled change | Update a pending subscription scheduled change in the VOSS System. Already executed scheduled changes cannot be updated. |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BokaMera.API.ServiceModel.Dtos
Imports BokaMera.VossIntegration.ApiTools.Model
Namespace Global
Namespace BokaMera.API.ServiceModel.Dtos
<ApiResponse(Description:="You were unauthorized to call this service", StatusCode:=401)>
Public Partial Class UpdateVossSubscriptionScheduledChange
'''<Summary>
'''The subscription id
'''</Summary>
<ApiMember(Description:="The subscription id", IsRequired:=true)>
Public Overridable Property SubscriptionId As Guid
'''<Summary>
'''The subscription scheduled change id
'''</Summary>
<ApiMember(Description:="The subscription scheduled change id", IsRequired:=true)>
Public Overridable Property Id As Guid
'''<Summary>
'''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
'''</Summary>
<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 Overridable Property Type As TypeEnum
'''<Summary>
'''Optional package version id; if omitted the current version of the subscription package is used
'''</Summary>
<ApiMember(Description:="Optional package version id; if omitted the current version of the subscription package is used")>
Public Overridable Property VersionId As Guid?
'''<Summary>
'''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
'''</Summary>
<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 Overridable Property PackageId As Guid?
'''<Summary>
'''The id of a tier which will be active after the scheduled change is executed; can be omitted if PlanId is provided instead
'''</Summary>
<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 Overridable Property TierId As Guid?
'''<Summary>
'''The id of a plan which will be active after the scheduled change is executed; can be omitted if TierId is provided instead
'''</Summary>
<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 Overridable Property PlanId As Guid?
'''<Summary>
'''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
'''</Summary>
<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 Overridable Property PeriodIterationCount As Integer?
End Class
End Namespace
Namespace BokaMera.VossIntegration.ApiTools.Model
<DataContract(Name:="SubscriptionScheduledChangePackageResult")>
Public Partial Class SubscriptionScheduledChangePackageResult
<DataMember(Name:="id", IsRequired:=true)>
Public Overridable Property Id As Guid
<DataMember(Name:="versionId", IsRequired:=true)>
Public Overridable Property VersionId As Guid
<DataMember(Name:="name", IsRequired:=true)>
Public Overridable Property Name As String
End Class
<DataContract(Name:="SubscriptionScheduledChangePlanResult")>
Public Partial Class SubscriptionScheduledChangePlanResult
<DataMember(Name:="id", IsRequired:=true)>
Public Overridable Property Id As Guid
<DataMember(Name:="name", IsRequired:=true)>
Public Overridable Property Name As String
End Class
<DataContract(Name:="SubscriptionScheduledChangeResult")>
Public Partial Class SubscriptionScheduledChangeResult
<DataMember(Name:="type")>
Public Overridable Property Type As TypeEnum
<DataMember(Name:="status", IsRequired:=true)>
Public Overridable Property Status As StatusEnum
<DataMember(Name:="id", IsRequired:=true)>
Public Overridable Property Id As Guid
<DataMember(Name:="package")>
Public Overridable Property Package As SubscriptionScheduledChangePackageResult
<DataMember(Name:="tier")>
Public Overridable Property Tier As SubscriptionScheduledChangeTierResult
<DataMember(Name:="plan")>
Public Overridable Property Plan As SubscriptionScheduledChangePlanResult
<DataMember(Name:="scheduledDate", IsRequired:=true)>
Public Overridable Property ScheduledDate As Date
<DataMember(Name:="salesInformation")>
Public Overridable Property SalesInformation As SubscriptionScheduledChangeSalesInformationResult
Public Enum TypeEnum
AtSubscriptionBillingPeriodEnd
AtBindingPeriodEnd
End Enum
Public Enum StatusEnum
Active
Terminated
End Enum
End Class
<DataContract(Name:="SubscriptionScheduledChangeSalesInformationResult")>
Public Partial Class SubscriptionScheduledChangeSalesInformationResult
<DataMember(Name:="salesPersonId")>
Public Overridable Property SalesPersonId As String
<DataMember(Name:="salesDepartmentId")>
Public Overridable Property SalesDepartmentId As String
End Class
<DataContract(Name:="SubscriptionScheduledChangeTierResult")>
Public Partial Class SubscriptionScheduledChangeTierResult
<DataMember(Name:="id", IsRequired:=true)>
Public Overridable Property Id As Guid
<DataMember(Name:="name", IsRequired:=true)>
Public Overridable Property Name As String
End Class
End Namespace
End Namespace
VB.NET UpdateVossSubscriptionScheduledChange DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /voss/subscriptions/{SubscriptionId}/scheduledChanges/{Id} HTTP/1.1
Host: testapi.bokamera.se
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"Type":"AtSubscriptionBillingPeriodEnd","VersionId":"00000000-0000-0000-0000-000000000000","PackageId":"00000000-0000-0000-0000-000000000000","TierId":"00000000-0000-0000-0000-000000000000","PlanId":"00000000-0000-0000-0000-000000000000","PeriodIterationCount":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"type":"AtSubscriptionBillingPeriodEnd","status":"Pending"}