| Required role: | Backoffice |
| PUT | /subscription/update_plan |
|---|
"use strict";
export class PlanDetailsFreeUntil {
/** @param {{stopAt?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?string} */
stopAt;
}
/** @typedef {'Monthly'|'Yearly'} */
export var Period;
(function (Period) {
Period["Monthly"] = "Monthly"
Period["Yearly"] = "Yearly"
})(Period || (Period = {}));
export class PlanDetailsInvoice {
/** @param {{period?:Period,amount?:number,currency?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?Period} */
period;
/** @type {?number} */
amount;
/** @type {?string} */
currency;
}
export class PlanDetailsMonthlyStripe {
/** @param {{amount?:number,currency?:string,freeStartUpMonths?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?number} */
amount;
/** @type {?string} */
currency;
/** @type {?number} */
freeStartUpMonths;
}
export class PlanDetailsFreeOnClaim {
/** @param {{months?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?number} */
months;
}
export class SubscriptionPlanDetailsUnion {
/** @param {{freeUntil?:PlanDetailsFreeUntil,invoice?:PlanDetailsInvoice,monthlyStripe?:PlanDetailsMonthlyStripe,freeOnClaim?:PlanDetailsFreeOnClaim}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?PlanDetailsFreeUntil} */
freeUntil;
/** @type {?PlanDetailsInvoice} */
invoice;
/** @type {?PlanDetailsMonthlyStripe} */
monthlyStripe;
/** @type {?PlanDetailsFreeOnClaim} */
freeOnClaim;
}
JavaScript 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>