| Required role: | Backoffice |
| PUT | /subscription/update_plan |
|---|
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class BackofficeApi
{
public static class SubscriptionPlanDetailsUnion
{
public PlanDetailsFreeUntil freeUntil = null;
public PlanDetailsInvoice invoice = null;
public PlanDetailsMonthlyStripe monthlyStripe = null;
public PlanDetailsFreeOnClaim freeOnClaim = null;
public PlanDetailsFreeUntil getFreeUntil() { return freeUntil; }
public SubscriptionPlanDetailsUnion setFreeUntil(PlanDetailsFreeUntil value) { this.freeUntil = value; return this; }
public PlanDetailsInvoice getInvoice() { return invoice; }
public SubscriptionPlanDetailsUnion setInvoice(PlanDetailsInvoice value) { this.invoice = value; return this; }
public PlanDetailsMonthlyStripe getMonthlyStripe() { return monthlyStripe; }
public SubscriptionPlanDetailsUnion setMonthlyStripe(PlanDetailsMonthlyStripe value) { this.monthlyStripe = value; return this; }
public PlanDetailsFreeOnClaim getFreeOnClaim() { return freeOnClaim; }
public SubscriptionPlanDetailsUnion setFreeOnClaim(PlanDetailsFreeOnClaim value) { this.freeOnClaim = value; return this; }
}
public static class PlanDetailsFreeUntil
{
public Date stopAt = null;
public Date getStopAt() { return stopAt; }
public PlanDetailsFreeUntil setStopAt(Date value) { this.stopAt = value; return this; }
}
public static class PlanDetailsInvoice
{
public Period period = null;
public Double amount = null;
public String currency = null;
public Period getPeriod() { return period; }
public PlanDetailsInvoice setPeriod(Period value) { this.period = value; return this; }
public Double getAmount() { return amount; }
public PlanDetailsInvoice setAmount(Double value) { this.amount = value; return this; }
public String getCurrency() { return currency; }
public PlanDetailsInvoice setCurrency(String value) { this.currency = value; return this; }
}
public static enum Period
{
Monthly,
Yearly;
}
public static class PlanDetailsMonthlyStripe
{
public Double amount = null;
public String currency = null;
public Integer freeStartUpMonths = null;
public Double getAmount() { return amount; }
public PlanDetailsMonthlyStripe setAmount(Double value) { this.amount = value; return this; }
public String getCurrency() { return currency; }
public PlanDetailsMonthlyStripe setCurrency(String value) { this.currency = value; return this; }
public Integer getFreeStartUpMonths() { return freeStartUpMonths; }
public PlanDetailsMonthlyStripe setFreeStartUpMonths(Integer value) { this.freeStartUpMonths = value; return this; }
}
public static class PlanDetailsFreeOnClaim
{
public Integer months = null;
public Integer getMonths() { return months; }
public PlanDetailsFreeOnClaim setMonths(Integer value) { this.months = value; return this; }
}
}
Java UpdateSubscriptionPlanRequest 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 /subscription/update_plan HTTP/1.1
Host: backoffice-api.brovs.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"id":0,"canBeSelectedByClient":false,"subscriptionPlanDetails":{"freeUntil":{"stopAt":"0001-01-01T00:00:00.0000000Z"},"invoice":{"period":"Monthly","amount":0,"currency":"String"},"monthlyStripe":{"amount":0,"currency":"String","freeStartUpMonths":0},"freeOnClaim":{"months":0}}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"success":false}