| POST | /create-customer |
|---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
public static class CreateSubscribeCustomer implements IPost
{
public String email = null;
public String getEmail() { return email; }
public CreateSubscribeCustomer setEmail(String value) { this.email = value; return this; }
}
public static class StripeCustomer extends StripeId
{
public Integer accountBalance = null;
public String businessVatId = null;
public Date created = null;
public String defaultSource = null;
public Boolean delinquent = null;
public String description = null;
public StripeDiscount discount = null;
public String email = null;
public String invoicePrefix = null;
public Boolean livemode = null;
public HashMap<String,String> metadata = null;
public StripeShipping shipping = null;
public StripeCollection<StripeCard> sources = null;
public StripeCollection<StripeSubscription> subscriptions = null;
public Boolean deleted = null;
public String currency = null;
public Integer getAccountBalance() { return accountBalance; }
public StripeCustomer setAccountBalance(Integer value) { this.accountBalance = value; return this; }
public String getBusinessVatId() { return businessVatId; }
public StripeCustomer setBusinessVatId(String value) { this.businessVatId = value; return this; }
public Date getCreated() { return created; }
public StripeCustomer setCreated(Date value) { this.created = value; return this; }
public String getDefaultSource() { return defaultSource; }
public StripeCustomer setDefaultSource(String value) { this.defaultSource = value; return this; }
public Boolean isDelinquent() { return delinquent; }
public StripeCustomer setDelinquent(Boolean value) { this.delinquent = value; return this; }
public String getDescription() { return description; }
public StripeCustomer setDescription(String value) { this.description = value; return this; }
public StripeDiscount getDiscount() { return discount; }
public StripeCustomer setDiscount(StripeDiscount value) { this.discount = value; return this; }
public String getEmail() { return email; }
public StripeCustomer setEmail(String value) { this.email = value; return this; }
public String getInvoicePrefix() { return invoicePrefix; }
public StripeCustomer setInvoicePrefix(String value) { this.invoicePrefix = value; return this; }
public Boolean isLivemode() { return livemode; }
public StripeCustomer setLivemode(Boolean value) { this.livemode = value; return this; }
public HashMap<String,String> getMetadata() { return metadata; }
public StripeCustomer setMetadata(HashMap<String,String> value) { this.metadata = value; return this; }
public StripeShipping getShipping() { return shipping; }
public StripeCustomer setShipping(StripeShipping value) { this.shipping = value; return this; }
public StripeCollection<StripeCard> getSources() { return sources; }
public StripeCustomer setSources(StripeCollection<StripeCard> value) { this.sources = value; return this; }
public StripeCollection<StripeSubscription> getSubscriptions() { return subscriptions; }
public StripeCustomer setSubscriptions(StripeCollection<StripeSubscription> value) { this.subscriptions = value; return this; }
public Boolean isDeleted() { return deleted; }
public StripeCustomer setDeleted(Boolean value) { this.deleted = value; return this; }
public String getCurrency() { return currency; }
public StripeCustomer setCurrency(String value) { this.currency = value; return this; }
}
public static class StripeId extends StripeObject
{
public String id = null;
public String getId() { return id; }
public StripeId setId(String value) { this.id = value; return this; }
}
public static class StripeObject
{
public StripeType object = null;
public StripeType getObject() { return object; }
public StripeObject setObject(StripeType value) { this.object = value; return this; }
}
public static enum StripeType
{
Unknown,
Account,
Card,
Charge,
Coupon,
Customer,
Discount,
Dispute,
Event,
Invoiceitem,
Invoice,
LineItem,
Plan,
Subscription,
Token,
Transfer,
List,
Product;
}
public static class StripeDiscount extends StripeId
{
public String customer = null;
public StripeCoupon coupon = null;
public Date start = null;
public Date end = null;
public String getCustomer() { return customer; }
public StripeDiscount setCustomer(String value) { this.customer = value; return this; }
public StripeCoupon getCoupon() { return coupon; }
public StripeDiscount setCoupon(StripeCoupon value) { this.coupon = value; return this; }
public Date getStart() { return start; }
public StripeDiscount setStart(Date value) { this.start = value; return this; }
public Date getEnd() { return end; }
public StripeDiscount setEnd(Date value) { this.end = value; return this; }
}
public static class StripeCoupon extends StripeId
{
public Integer amountOff = null;
public Date created = null;
public String currency = null;
public StripeCouponDuration duration = null;
public Integer durationInMonths = null;
public Boolean livemode = null;
public Integer maxRedemptions = null;
public HashMap<String,String> metadata = null;
public Integer percentOff = null;
public Date redeemBy = null;
public Integer timesRedeemed = null;
public Boolean valid = null;
public Integer getAmountOff() { return amountOff; }
public StripeCoupon setAmountOff(Integer value) { this.amountOff = value; return this; }
public Date getCreated() { return created; }
public StripeCoupon setCreated(Date value) { this.created = value; return this; }
public String getCurrency() { return currency; }
public StripeCoupon setCurrency(String value) { this.currency = value; return this; }
public StripeCouponDuration getDuration() { return duration; }
public StripeCoupon setDuration(StripeCouponDuration value) { this.duration = value; return this; }
public Integer getDurationInMonths() { return durationInMonths; }
public StripeCoupon setDurationInMonths(Integer value) { this.durationInMonths = value; return this; }
public Boolean isLivemode() { return livemode; }
public StripeCoupon setLivemode(Boolean value) { this.livemode = value; return this; }
public Integer getMaxRedemptions() { return maxRedemptions; }
public StripeCoupon setMaxRedemptions(Integer value) { this.maxRedemptions = value; return this; }
public HashMap<String,String> getMetadata() { return metadata; }
public StripeCoupon setMetadata(HashMap<String,String> value) { this.metadata = value; return this; }
public Integer getPercentOff() { return percentOff; }
public StripeCoupon setPercentOff(Integer value) { this.percentOff = value; return this; }
public Date getRedeemBy() { return redeemBy; }
public StripeCoupon setRedeemBy(Date value) { this.redeemBy = value; return this; }
public Integer getTimesRedeemed() { return timesRedeemed; }
public StripeCoupon setTimesRedeemed(Integer value) { this.timesRedeemed = value; return this; }
public Boolean isValid() { return valid; }
public StripeCoupon setValid(Boolean value) { this.valid = value; return this; }
}
public static enum StripeCouponDuration
{
Forever,
Once,
Repeating;
}
public static class StripeShipping
{
public StripeAddress address = null;
public String name = null;
public String phone = null;
public StripeAddress getAddress() { return address; }
public StripeShipping setAddress(StripeAddress value) { this.address = value; return this; }
public String getName() { return name; }
public StripeShipping setName(String value) { this.name = value; return this; }
public String getPhone() { return phone; }
public StripeShipping setPhone(String value) { this.phone = value; return this; }
}
public static class StripeAddress
{
public String city = null;
public String country = null;
public String line1 = null;
public String line2 = null;
public String postalCode = null;
public String state = null;
public String getCity() { return city; }
public StripeAddress setCity(String value) { this.city = value; return this; }
public String getCountry() { return country; }
public StripeAddress setCountry(String value) { this.country = value; return this; }
public String getLine1() { return line1; }
public StripeAddress setLine1(String value) { this.line1 = value; return this; }
public String getLine2() { return line2; }
public StripeAddress setLine2(String value) { this.line2 = value; return this; }
public String getPostalCode() { return postalCode; }
public StripeAddress setPostalCode(String value) { this.postalCode = value; return this; }
public String getState() { return state; }
public StripeAddress setState(String value) { this.state = value; return this; }
}
public static class StripeCollection<T> extends StripeId
{
public String url = null;
public Integer totalCount = null;
public Boolean hasMore = null;
public ArrayList<T> data = null;
public String getUrl() { return url; }
public StripeCollection<T> setUrl(String value) { this.url = value; return this; }
public Integer getTotalCount() { return totalCount; }
public StripeCollection<T> setTotalCount(Integer value) { this.totalCount = value; return this; }
public Boolean isHasMore() { return hasMore; }
public StripeCollection<T> setHasMore(Boolean value) { this.hasMore = value; return this; }
public ArrayList<T> getData() { return data; }
public StripeCollection<T> setData(ArrayList<T> value) { this.data = value; return this; }
}
public static class StripeCard extends StripeId
{
public String brand = null;
public String number = null;
public String last4 = null;
public String dynamicLast4 = null;
public Integer expMonth = null;
public Integer expYear = null;
public String cvc = null;
public String name = null;
public String addressCity = null;
public String addressCountry = null;
public String addressLine1 = null;
public String addressLine2 = null;
public String addressState = null;
public String addressZip = null;
public StripeCvcCheck cvcCheck = null;
public String addressLine1Check = null;
public String addressZipCheck = null;
public String funding = null;
public String fingerprint = null;
public String customer = null;
public String country = null;
public String getBrand() { return brand; }
public StripeCard setBrand(String value) { this.brand = value; return this; }
public String getNumber() { return number; }
public StripeCard setNumber(String value) { this.number = value; return this; }
public String getLast4() { return last4; }
public StripeCard setLast4(String value) { this.last4 = value; return this; }
public String getDynamicLast4() { return dynamicLast4; }
public StripeCard setDynamicLast4(String value) { this.dynamicLast4 = value; return this; }
public Integer getExpMonth() { return expMonth; }
public StripeCard setExpMonth(Integer value) { this.expMonth = value; return this; }
public Integer getExpYear() { return expYear; }
public StripeCard setExpYear(Integer value) { this.expYear = value; return this; }
public String getCvc() { return cvc; }
public StripeCard setCvc(String value) { this.cvc = value; return this; }
public String getName() { return name; }
public StripeCard setName(String value) { this.name = value; return this; }
public String getAddressCity() { return addressCity; }
public StripeCard setAddressCity(String value) { this.addressCity = value; return this; }
public String getAddressCountry() { return addressCountry; }
public StripeCard setAddressCountry(String value) { this.addressCountry = value; return this; }
public String getAddressLine1() { return addressLine1; }
public StripeCard setAddressLine1(String value) { this.addressLine1 = value; return this; }
public String getAddressLine2() { return addressLine2; }
public StripeCard setAddressLine2(String value) { this.addressLine2 = value; return this; }
public String getAddressState() { return addressState; }
public StripeCard setAddressState(String value) { this.addressState = value; return this; }
public String getAddressZip() { return addressZip; }
public StripeCard setAddressZip(String value) { this.addressZip = value; return this; }
public StripeCvcCheck getCvcCheck() { return cvcCheck; }
public StripeCard setCvcCheck(StripeCvcCheck value) { this.cvcCheck = value; return this; }
public String getAddressLine1Check() { return addressLine1Check; }
public StripeCard setAddressLine1Check(String value) { this.addressLine1Check = value; return this; }
public String getAddressZipCheck() { return addressZipCheck; }
public StripeCard setAddressZipCheck(String value) { this.addressZipCheck = value; return this; }
public String getFunding() { return funding; }
public StripeCard setFunding(String value) { this.funding = value; return this; }
public String getFingerprint() { return fingerprint; }
public StripeCard setFingerprint(String value) { this.fingerprint = value; return this; }
public String getCustomer() { return customer; }
public StripeCard setCustomer(String value) { this.customer = value; return this; }
public String getCountry() { return country; }
public StripeCard setCountry(String value) { this.country = value; return this; }
}
public static enum StripeCvcCheck
{
Unknown,
Pass,
Fail,
Unchecked;
}
public static class StripeSubscription extends StripeId
{
public Date currentPeriodEnd = null;
public StripeSubscriptionStatus status = null;
public StripePlan plan = null;
public Date currentPeriodStart = null;
public Date start = null;
public Date trialStart = null;
public Boolean cancelAtPeriodEnd = null;
public Date trialEnd = null;
public Date canceledAt = null;
public Date endedAt = null;
public String customer = null;
public Integer quantity = null;
public Date getCurrentPeriodEnd() { return currentPeriodEnd; }
public StripeSubscription setCurrentPeriodEnd(Date value) { this.currentPeriodEnd = value; return this; }
public StripeSubscriptionStatus getStatus() { return status; }
public StripeSubscription setStatus(StripeSubscriptionStatus value) { this.status = value; return this; }
public StripePlan getPlan() { return plan; }
public StripeSubscription setPlan(StripePlan value) { this.plan = value; return this; }
public Date getCurrentPeriodStart() { return currentPeriodStart; }
public StripeSubscription setCurrentPeriodStart(Date value) { this.currentPeriodStart = value; return this; }
public Date getStart() { return start; }
public StripeSubscription setStart(Date value) { this.start = value; return this; }
public Date getTrialStart() { return trialStart; }
public StripeSubscription setTrialStart(Date value) { this.trialStart = value; return this; }
public Boolean isCancelAtPeriodEnd() { return cancelAtPeriodEnd; }
public StripeSubscription setCancelAtPeriodEnd(Boolean value) { this.cancelAtPeriodEnd = value; return this; }
public Date getTrialEnd() { return trialEnd; }
public StripeSubscription setTrialEnd(Date value) { this.trialEnd = value; return this; }
public Date getCanceledAt() { return canceledAt; }
public StripeSubscription setCanceledAt(Date value) { this.canceledAt = value; return this; }
public Date getEndedAt() { return endedAt; }
public StripeSubscription setEndedAt(Date value) { this.endedAt = value; return this; }
public String getCustomer() { return customer; }
public StripeSubscription setCustomer(String value) { this.customer = value; return this; }
public Integer getQuantity() { return quantity; }
public StripeSubscription setQuantity(Integer value) { this.quantity = value; return this; }
}
public static enum StripeSubscriptionStatus
{
Unknown,
Trialing,
Active,
PastDue,
Canceled,
Unpaid;
}
public static class StripePlan extends StripeId
{
public Integer amount = null;
public Date created = null;
public String currency = null;
public StripePlanInterval interval = null;
public Integer intervalCount = null;
public Boolean livemode = null;
public HashMap<String,String> metadata = null;
public String nickname = null;
public String product = null;
public Integer trialPeriodDays = null;
public Integer getAmount() { return amount; }
public StripePlan setAmount(Integer value) { this.amount = value; return this; }
public Date getCreated() { return created; }
public StripePlan setCreated(Date value) { this.created = value; return this; }
public String getCurrency() { return currency; }
public StripePlan setCurrency(String value) { this.currency = value; return this; }
public StripePlanInterval getInterval() { return interval; }
public StripePlan setInterval(StripePlanInterval value) { this.interval = value; return this; }
public Integer getIntervalCount() { return intervalCount; }
public StripePlan setIntervalCount(Integer value) { this.intervalCount = value; return this; }
public Boolean isLivemode() { return livemode; }
public StripePlan setLivemode(Boolean value) { this.livemode = value; return this; }
public HashMap<String,String> getMetadata() { return metadata; }
public StripePlan setMetadata(HashMap<String,String> value) { this.metadata = value; return this; }
public String getNickname() { return nickname; }
public StripePlan setNickname(String value) { this.nickname = value; return this; }
public String getProduct() { return product; }
public StripePlan setProduct(String value) { this.product = value; return this; }
public Integer getTrialPeriodDays() { return trialPeriodDays; }
public StripePlan setTrialPeriodDays(Integer value) { this.trialPeriodDays = value; return this; }
}
public static enum StripePlanInterval
{
Month,
Year;
}
}
Java CreateSubscribeCustomer DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /create-customer HTTP/1.1
Host: sfgboxapi.dev.scadsoftware.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
email: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
accountBalance: 0,
businessVatId: String,
created: 0001-01-01,
defaultSource: String,
delinquent: False,
description: String,
discount:
{
customer: String,
coupon:
{
amountOff: 0,
created: 0001-01-01,
currency: String,
duration: forever,
durationInMonths: 0,
livemode: False,
maxRedemptions: 0,
metadata:
{
String: String
},
percentOff: 0,
redeemBy: 0001-01-01,
timesRedeemed: 0,
valid: False,
id: String,
object: unknown
},
start: 0001-01-01,
end: 0001-01-01,
id: String,
object: unknown
},
email: String,
invoicePrefix: String,
livemode: False,
metadata:
{
String: String
},
shipping:
{
address:
{
city: String,
country: String,
line1: String,
line2: String,
postalCode: String,
state: String
},
name: String,
phone: String
},
sources:
{
url: String,
totalCount: 0,
hasMore: False,
data:
[
{
brand: String,
number: String,
last4: String,
dynamicLast4: String,
expMonth: 0,
expYear: 0,
cvc: String,
name: String,
addressCity: String,
addressCountry: String,
addressLine1: String,
addressLine2: String,
addressState: String,
addressZip: String,
cvcCheck: Unknown,
addressLine1Check: String,
addressZipCheck: String,
funding: String,
fingerprint: String,
customer: String,
country: String,
id: String,
object: unknown
}
],
id: String,
object: unknown
},
subscriptions:
{
url: String,
totalCount: 0,
hasMore: False,
data:
[
{
currentPeriodEnd: 0001-01-01,
status: Unknown,
plan:
{
amount: 0,
created: 0001-01-01,
currency: String,
interval: month,
intervalCount: 0,
livemode: False,
metadata:
{
String: String
},
nickname: String,
product: String,
trialPeriodDays: 0,
id: String,
object: unknown
},
currentPeriodStart: 0001-01-01,
start: 0001-01-01,
trialStart: 0001-01-01,
cancelAtPeriodEnd: False,
trialEnd: 0001-01-01,
canceledAt: 0001-01-01,
endedAt: 0001-01-01,
customer: String,
quantity: 0,
id: String,
object: unknown
}
],
id: String,
object: unknown
},
deleted: False,
currency: String,
id: String,
object: unknown
}