| Required role: | Backoffice |
| PUT | /subscription/update_plan |
|---|
import Foundation
import ServiceStack
public class SubscriptionPlanDetailsUnion : Codable
{
public var freeUntil:PlanDetailsFreeUntil
public var invoice:PlanDetailsInvoice
public var monthlyStripe:PlanDetailsMonthlyStripe
public var freeOnClaim:PlanDetailsFreeOnClaim
required public init(){}
}
public class PlanDetailsFreeUntil : Codable
{
public var stopAt:Date
required public init(){}
}
public class PlanDetailsInvoice : Codable
{
public var period:Period
public var amount:Double
public var currency:String
required public init(){}
}
public enum Period : String, Codable
{
case Monthly
case Yearly
}
public class PlanDetailsMonthlyStripe : Codable
{
public var amount:Double
public var currency:String
public var freeStartUpMonths:Int?
required public init(){}
}
public class PlanDetailsFreeOnClaim : Codable
{
public var months:Int
required public init(){}
}
Swift UpdateSubscriptionPlanRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /subscription/update_plan HTTP/1.1
Host: backoffice-api.brovs.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateSubscriptionPlanRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BackofficeApi.Dto">
<CanBeSelectedByClient>false</CanBeSelectedByClient>
<Id>0</Id>
<SubscriptionPlanDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/Entities.Common">
<d2p1:FreeOnClaim>
<d2p1:Months>0</d2p1:Months>
</d2p1:FreeOnClaim>
<d2p1:FreeUntil>
<d2p1:StopAt>0001-01-01T00:00:00</d2p1:StopAt>
</d2p1:FreeUntil>
<d2p1:Invoice>
<d2p1:Amount>0</d2p1:Amount>
<d2p1:Currency>String</d2p1:Currency>
<d2p1:Period>Monthly</d2p1:Period>
</d2p1:Invoice>
<d2p1:MonthlyStripe>
<d2p1:Amount>0</d2p1:Amount>
<d2p1:Currency>String</d2p1:Currency>
<d2p1:FreeStartUpMonths>0</d2p1:FreeStartUpMonths>
</d2p1:MonthlyStripe>
</SubscriptionPlanDetails>
</UpdateSubscriptionPlanRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <UpdateSubscriptionPlanResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BackofficeApi.Dto"> <Success>false</Success> </UpdateSubscriptionPlanResponse>