ServiceStack Home (Live)

<back to all web services

CreateCustomer

Admin
Requires Authentication
Required role:Admin
The following routes are available for this service:
POST/CreateCustomer
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    @ValidateRequest(Validator="IsAdmin")
    public static class CreateCustomer implements IPost
    {
        public String firstName = null;
        public String lastName = null;
        public String email = null;
        public String password = null;
        public String company = null;
        public String phoneNumber = null;
        public String addressLine1 = null;
        public String addressLine2 = null;
        public String addressCity = null;
        public String addressZip = null;
        public String addressState = null;
        public String addressCountry = null;
        public Date createdDate = null;
        
        public String getFirstName() { return firstName; }
        public CreateCustomer setFirstName(String value) { this.firstName = value; return this; }
        public String getLastName() { return lastName; }
        public CreateCustomer setLastName(String value) { this.lastName = value; return this; }
        public String getEmail() { return email; }
        public CreateCustomer setEmail(String value) { this.email = value; return this; }
        public String getPassword() { return password; }
        public CreateCustomer setPassword(String value) { this.password = value; return this; }
        public String getCompany() { return company; }
        public CreateCustomer setCompany(String value) { this.company = value; return this; }
        public String getPhoneNumber() { return phoneNumber; }
        public CreateCustomer setPhoneNumber(String value) { this.phoneNumber = value; return this; }
        public String getAddressLine1() { return addressLine1; }
        public CreateCustomer setAddressLine1(String value) { this.addressLine1 = value; return this; }
        public String getAddressLine2() { return addressLine2; }
        public CreateCustomer setAddressLine2(String value) { this.addressLine2 = value; return this; }
        public String getAddressCity() { return addressCity; }
        public CreateCustomer setAddressCity(String value) { this.addressCity = value; return this; }
        public String getAddressZip() { return addressZip; }
        public CreateCustomer setAddressZip(String value) { this.addressZip = value; return this; }
        public String getAddressState() { return addressState; }
        public CreateCustomer setAddressState(String value) { this.addressState = value; return this; }
        public String getAddressCountry() { return addressCountry; }
        public CreateCustomer setAddressCountry(String value) { this.addressCountry = value; return this; }
        public Date getCreatedDate() { return createdDate; }
        public CreateCustomer setCreatedDate(Date value) { this.createdDate = value; return this; }
    }

    public static class Customer implements IAddress
    {
        public Integer id = null;
        public String email = null;
        public String displayName = null;
        public String firstName = null;
        public String lastName = null;
        public String company = null;
        public String phoneNumber = null;
        public String addressLine1 = null;
        public String addressLine2 = null;
        public String addressCity = null;
        public String addressZip = null;
        public String addressState = null;
        public String addressCountry = null;
        public String stripeCustomerId = null;
        public String stripeCouponId = null;
        public String plan = null;
        public Date createdDate = null;
        public Boolean isReferrer = null;
        public ArrayList<Order> orders = null;
        public ArrayList<Subscription> subscriptions = null;
        
        public Integer getId() { return id; }
        public Customer setId(Integer value) { this.id = value; return this; }
        public String getEmail() { return email; }
        public Customer setEmail(String value) { this.email = value; return this; }
        public String getDisplayName() { return displayName; }
        public Customer setDisplayName(String value) { this.displayName = value; return this; }
        public String getFirstName() { return firstName; }
        public Customer setFirstName(String value) { this.firstName = value; return this; }
        public String getLastName() { return lastName; }
        public Customer setLastName(String value) { this.lastName = value; return this; }
        public String getCompany() { return company; }
        public Customer setCompany(String value) { this.company = value; return this; }
        public String getPhoneNumber() { return phoneNumber; }
        public Customer setPhoneNumber(String value) { this.phoneNumber = value; return this; }
        public String getAddressLine1() { return addressLine1; }
        public Customer setAddressLine1(String value) { this.addressLine1 = value; return this; }
        public String getAddressLine2() { return addressLine2; }
        public Customer setAddressLine2(String value) { this.addressLine2 = value; return this; }
        public String getAddressCity() { return addressCity; }
        public Customer setAddressCity(String value) { this.addressCity = value; return this; }
        public String getAddressZip() { return addressZip; }
        public Customer setAddressZip(String value) { this.addressZip = value; return this; }
        public String getAddressState() { return addressState; }
        public Customer setAddressState(String value) { this.addressState = value; return this; }
        public String getAddressCountry() { return addressCountry; }
        public Customer setAddressCountry(String value) { this.addressCountry = value; return this; }
        public String getStripeCustomerId() { return stripeCustomerId; }
        public Customer setStripeCustomerId(String value) { this.stripeCustomerId = value; return this; }
        public String getStripeCouponId() { return stripeCouponId; }
        public Customer setStripeCouponId(String value) { this.stripeCouponId = value; return this; }
        public String getPlan() { return plan; }
        public Customer setPlan(String value) { this.plan = value; return this; }
        public Date getCreatedDate() { return createdDate; }
        public Customer setCreatedDate(Date value) { this.createdDate = value; return this; }
        public Boolean getIsReferrer() { return isReferrer; }
        public Customer setIsReferrer(Boolean value) { this.isReferrer = value; return this; }
        public ArrayList<Order> getOrders() { return orders; }
        public Customer setOrders(ArrayList<Order> value) { this.orders = value; return this; }
        public ArrayList<Subscription> getSubscriptions() { return subscriptions; }
        public Customer setSubscriptions(ArrayList<Subscription> value) { this.subscriptions = value; return this; }
    }

    public static class Order implements IAddress
    {
        public Integer id = null;
        public Integer customerId = null;
        public String productName = null;
        public String firstName = null;
        public String lastName = null;
        public String email = null;
        public String company = null;
        public String phoneNumber = null;
        public String addressLine1 = null;
        public String addressLine2 = null;
        public String addressCity = null;
        public String addressZip = null;
        public String addressState = null;
        public String addressCountry = null;
        public Boolean agreeTerms = null;
        public String notes = null;
        public String last4 = null;
        public Integer subTotal = null;
        public String couponId = null;
        public Integer discount = null;
        public Integer tax = null;
        public Integer total = null;
        public Integer itemQuantity = null;
        public Integer authorizedQuantity = null;
        public Integer subscriptionId = null;
        public String licenseRef = null;
        public Integer paymentId = null;
        public Integer emailId = null;
        public Boolean paid = null;
        public Date createdDate = null;
        public Date modifiedDate = null;
        public String modifiedBy = null;
        public Date cancelledDate = null;
        public String cancelledReason = null;
        public String ipAddress = null;
        public ArrayList<OrderDetail> orderDetails = null;
        
        public Integer getId() { return id; }
        public Order setId(Integer value) { this.id = value; return this; }
        public Integer getCustomerId() { return customerId; }
        public Order setCustomerId(Integer value) { this.customerId = value; return this; }
        public String getProductName() { return productName; }
        public Order setProductName(String value) { this.productName = value; return this; }
        public String getFirstName() { return firstName; }
        public Order setFirstName(String value) { this.firstName = value; return this; }
        public String getLastName() { return lastName; }
        public Order setLastName(String value) { this.lastName = value; return this; }
        public String getEmail() { return email; }
        public Order setEmail(String value) { this.email = value; return this; }
        public String getCompany() { return company; }
        public Order setCompany(String value) { this.company = value; return this; }
        public String getPhoneNumber() { return phoneNumber; }
        public Order setPhoneNumber(String value) { this.phoneNumber = value; return this; }
        public String getAddressLine1() { return addressLine1; }
        public Order setAddressLine1(String value) { this.addressLine1 = value; return this; }
        public String getAddressLine2() { return addressLine2; }
        public Order setAddressLine2(String value) { this.addressLine2 = value; return this; }
        public String getAddressCity() { return addressCity; }
        public Order setAddressCity(String value) { this.addressCity = value; return this; }
        public String getAddressZip() { return addressZip; }
        public Order setAddressZip(String value) { this.addressZip = value; return this; }
        public String getAddressState() { return addressState; }
        public Order setAddressState(String value) { this.addressState = value; return this; }
        public String getAddressCountry() { return addressCountry; }
        public Order setAddressCountry(String value) { this.addressCountry = value; return this; }
        public Boolean isAgreeTerms() { return agreeTerms; }
        public Order setAgreeTerms(Boolean value) { this.agreeTerms = value; return this; }
        public String getNotes() { return notes; }
        public Order setNotes(String value) { this.notes = value; return this; }
        public String getLast4() { return last4; }
        public Order setLast4(String value) { this.last4 = value; return this; }
        public Integer getSubTotal() { return subTotal; }
        public Order setSubTotal(Integer value) { this.subTotal = value; return this; }
        public String getCouponId() { return couponId; }
        public Order setCouponId(String value) { this.couponId = value; return this; }
        public Integer getDiscount() { return discount; }
        public Order setDiscount(Integer value) { this.discount = value; return this; }
        public Integer getTax() { return tax; }
        public Order setTax(Integer value) { this.tax = value; return this; }
        public Integer getTotal() { return total; }
        public Order setTotal(Integer value) { this.total = value; return this; }
        public Integer getItemQuantity() { return itemQuantity; }
        public Order setItemQuantity(Integer value) { this.itemQuantity = value; return this; }
        public Integer getAuthorizedQuantity() { return authorizedQuantity; }
        public Order setAuthorizedQuantity(Integer value) { this.authorizedQuantity = value; return this; }
        public Integer getSubscriptionId() { return subscriptionId; }
        public Order setSubscriptionId(Integer value) { this.subscriptionId = value; return this; }
        public String getLicenseRef() { return licenseRef; }
        public Order setLicenseRef(String value) { this.licenseRef = value; return this; }
        public Integer getPaymentId() { return paymentId; }
        public Order setPaymentId(Integer value) { this.paymentId = value; return this; }
        public Integer getEmailId() { return emailId; }
        public Order setEmailId(Integer value) { this.emailId = value; return this; }
        public Boolean isPaid() { return paid; }
        public Order setPaid(Boolean value) { this.paid = value; return this; }
        public Date getCreatedDate() { return createdDate; }
        public Order setCreatedDate(Date value) { this.createdDate = value; return this; }
        public Date getModifiedDate() { return modifiedDate; }
        public Order setModifiedDate(Date value) { this.modifiedDate = value; return this; }
        public String getModifiedBy() { return modifiedBy; }
        public Order setModifiedBy(String value) { this.modifiedBy = value; return this; }
        public Date getCancelledDate() { return cancelledDate; }
        public Order setCancelledDate(Date value) { this.cancelledDate = value; return this; }
        public String getCancelledReason() { return cancelledReason; }
        public Order setCancelledReason(String value) { this.cancelledReason = value; return this; }
        public String getIpAddress() { return ipAddress; }
        public Order setIpAddress(String value) { this.ipAddress = value; return this; }
        public ArrayList<OrderDetail> getOrderDetails() { return orderDetails; }
        public Order setOrderDetails(ArrayList<OrderDetail> value) { this.orderDetails = value; return this; }
    }

    public static class OrderDetail
    {
        public Integer id = null;
        public Integer orderId = null;
        public Integer skuId = null;
        public SkuType skuType = null;
        public Integer price = null;
        public String description = null;
        public Integer quantity = null;
        public Integer total = null;
        
        public Integer getId() { return id; }
        public OrderDetail setId(Integer value) { this.id = value; return this; }
        public Integer getOrderId() { return orderId; }
        public OrderDetail setOrderId(Integer value) { this.orderId = value; return this; }
        public Integer getSkuId() { return skuId; }
        public OrderDetail setSkuId(Integer value) { this.skuId = value; return this; }
        public SkuType getSkuType() { return skuType; }
        public OrderDetail setSkuType(SkuType value) { this.skuType = value; return this; }
        public Integer getPrice() { return price; }
        public OrderDetail setPrice(Integer value) { this.price = value; return this; }
        public String getDescription() { return description; }
        public OrderDetail setDescription(String value) { this.description = value; return this; }
        public Integer getQuantity() { return quantity; }
        public OrderDetail setQuantity(Integer value) { this.quantity = value; return this; }
        public Integer getTotal() { return total; }
        public OrderDetail setTotal(Integer value) { this.total = value; return this; }
    }

    public static enum SkuType
    {
        Product,
        PerDev,
        PerCore,
        Site,
        Support,
        Training,
        Register,
        Payment;
    }

    public static class Subscription
    {
        public Integer id = null;
        public Integer customerId = null;
        public String email = null;
        public Integer skuId = null;
        public String skuName = null;
        public SkuType skuType = null;
        public String code = null;
        public Integer quantity = null;
        public Integer supportQuantity = null;
        public Integer total = null;
        public Boolean isPlan = null;
        public Boolean isRenewal = null;
        public Integer subscriptionDurationDays = null;
        public Date renewalDate = null;
        public String licenseRef = null;
        public String licenseName = null;
        public String licenseAddress = null;
        public LicenseType licenseType = null;
        public Date expiryDate = null;
        public LicenseKey licenseKey = null;
        public String licenseKeyText = null;
        public Date createdDate = null;
        public Date modifiedDate = null;
        public Date cancelledDate = null;
        public String stripeSubscriptionId = null;
        public Integer emailId = null;
        public Integer emailRenewalId = null;
        public Integer emailExpiredId = null;
        public Integer renewalSubscriptionId = null;
        public String externalRef = null;
        public String notes = null;
        public String error = null;
        
        public Integer getId() { return id; }
        public Subscription setId(Integer value) { this.id = value; return this; }
        public Integer getCustomerId() { return customerId; }
        public Subscription setCustomerId(Integer value) { this.customerId = value; return this; }
        public String getEmail() { return email; }
        public Subscription setEmail(String value) { this.email = value; return this; }
        public Integer getSkuId() { return skuId; }
        public Subscription setSkuId(Integer value) { this.skuId = value; return this; }
        public String getSkuName() { return skuName; }
        public Subscription setSkuName(String value) { this.skuName = value; return this; }
        public SkuType getSkuType() { return skuType; }
        public Subscription setSkuType(SkuType value) { this.skuType = value; return this; }
        public String getCode() { return code; }
        public Subscription setCode(String value) { this.code = value; return this; }
        public Integer getQuantity() { return quantity; }
        public Subscription setQuantity(Integer value) { this.quantity = value; return this; }
        public Integer getSupportQuantity() { return supportQuantity; }
        public Subscription setSupportQuantity(Integer value) { this.supportQuantity = value; return this; }
        public Integer getTotal() { return total; }
        public Subscription setTotal(Integer value) { this.total = value; return this; }
        public Boolean getIsPlan() { return isPlan; }
        public Subscription setIsPlan(Boolean value) { this.isPlan = value; return this; }
        public Boolean getIsRenewal() { return isRenewal; }
        public Subscription setIsRenewal(Boolean value) { this.isRenewal = value; return this; }
        public Integer getSubscriptionDurationDays() { return subscriptionDurationDays; }
        public Subscription setSubscriptionDurationDays(Integer value) { this.subscriptionDurationDays = value; return this; }
        public Date getRenewalDate() { return renewalDate; }
        public Subscription setRenewalDate(Date value) { this.renewalDate = value; return this; }
        public String getLicenseRef() { return licenseRef; }
        public Subscription setLicenseRef(String value) { this.licenseRef = value; return this; }
        public String getLicenseName() { return licenseName; }
        public Subscription setLicenseName(String value) { this.licenseName = value; return this; }
        public String getLicenseAddress() { return licenseAddress; }
        public Subscription setLicenseAddress(String value) { this.licenseAddress = value; return this; }
        public LicenseType getLicenseType() { return licenseType; }
        public Subscription setLicenseType(LicenseType value) { this.licenseType = value; return this; }
        public Date getExpiryDate() { return expiryDate; }
        public Subscription setExpiryDate(Date value) { this.expiryDate = value; return this; }
        public LicenseKey getLicenseKey() { return licenseKey; }
        public Subscription setLicenseKey(LicenseKey value) { this.licenseKey = value; return this; }
        public String getLicenseKeyText() { return licenseKeyText; }
        public Subscription setLicenseKeyText(String value) { this.licenseKeyText = value; return this; }
        public Date getCreatedDate() { return createdDate; }
        public Subscription setCreatedDate(Date value) { this.createdDate = value; return this; }
        public Date getModifiedDate() { return modifiedDate; }
        public Subscription setModifiedDate(Date value) { this.modifiedDate = value; return this; }
        public Date getCancelledDate() { return cancelledDate; }
        public Subscription setCancelledDate(Date value) { this.cancelledDate = value; return this; }
        public String getStripeSubscriptionId() { return stripeSubscriptionId; }
        public Subscription setStripeSubscriptionId(String value) { this.stripeSubscriptionId = value; return this; }
        public Integer getEmailId() { return emailId; }
        public Subscription setEmailId(Integer value) { this.emailId = value; return this; }
        public Integer getEmailRenewalId() { return emailRenewalId; }
        public Subscription setEmailRenewalId(Integer value) { this.emailRenewalId = value; return this; }
        public Integer getEmailExpiredId() { return emailExpiredId; }
        public Subscription setEmailExpiredId(Integer value) { this.emailExpiredId = value; return this; }
        public Integer getRenewalSubscriptionId() { return renewalSubscriptionId; }
        public Subscription setRenewalSubscriptionId(Integer value) { this.renewalSubscriptionId = value; return this; }
        public String getExternalRef() { return externalRef; }
        public Subscription setExternalRef(String value) { this.externalRef = value; return this; }
        public String getNotes() { return notes; }
        public Subscription setNotes(String value) { this.notes = value; return this; }
        public String getError() { return error; }
        public Subscription setError(String value) { this.error = value; return this; }
    }

    public static enum LicenseType
    {
        Free,
        FreeIndividual,
        FreeOpenSource,
        Indie,
        Business,
        Enterprise,
        TextIndie,
        TextBusiness,
        OrmLiteIndie,
        OrmLiteBusiness,
        RedisIndie,
        RedisBusiness,
        AwsIndie,
        AwsBusiness,
        Trial,
        Site,
        TextSite,
        RedisSite,
        OrmLiteSite;
    }

    public static class LicenseKey
    {
        public String ref = null;
        public String name = null;
        public LicenseType type = null;
        public Long meta = null;
        public String hash = null;
        public String halg = null;
        public Date expiry = null;
        
        public String getRef() { return ref; }
        public LicenseKey setRef(String value) { this.ref = value; return this; }
        public String getName() { return name; }
        public LicenseKey setName(String value) { this.name = value; return this; }
        public LicenseType getType() { return type; }
        public LicenseKey setType(LicenseType value) { this.type = value; return this; }
        public Long getMeta() { return meta; }
        public LicenseKey setMeta(Long value) { this.meta = value; return this; }
        public String getHash() { return hash; }
        public LicenseKey setHash(String value) { this.hash = value; return this; }
        public String getHalg() { return halg; }
        public LicenseKey setHalg(String value) { this.halg = value; return this; }
        public Date getExpiry() { return expiry; }
        public LicenseKey setExpiry(Date value) { this.expiry = value; return this; }
    }

}

Java CreateCustomer DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /CreateCustomer HTTP/1.1 
Host: account.servicestack.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	firstName: String,
	lastName: String,
	email: String,
	password: String,
	company: String,
	phoneNumber: String,
	addressLine1: String,
	addressLine2: String,
	addressCity: String,
	addressZip: String,
	addressState: String,
	addressCountry: String,
	createdDate: 0001-01-01
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	email: String,
	displayName: String,
	firstName: String,
	lastName: String,
	company: String,
	phoneNumber: String,
	addressLine1: String,
	addressLine2: String,
	addressCity: String,
	addressZip: String,
	addressState: String,
	addressCountry: String,
	stripeCustomerId: String,
	stripeCouponId: String,
	plan: String,
	createdDate: 0001-01-01,
	isReferrer: False,
	orders: 
	[
		{
			id: 0,
			customerId: 0,
			productName: String,
			firstName: String,
			lastName: String,
			email: String,
			company: String,
			phoneNumber: String,
			addressLine1: String,
			addressLine2: String,
			addressCity: String,
			addressZip: String,
			addressState: String,
			addressCountry: String,
			agreeTerms: False,
			notes: String,
			last4: String,
			subTotal: 0,
			couponId: String,
			discount: 0,
			tax: 0,
			total: 0,
			itemQuantity: 0,
			authorizedQuantity: 0,
			subscriptionId: 0,
			licenseRef: String,
			paymentId: 0,
			emailId: 0,
			paid: False,
			createdDate: 0001-01-01,
			modifiedDate: 0001-01-01,
			modifiedBy: String,
			cancelledDate: 0001-01-01,
			cancelledReason: String,
			ipAddress: String,
			orderDetails: 
			[
				{
					id: 0,
					orderId: 0,
					skuId: 0,
					skuType: Product,
					price: 0,
					description: String,
					quantity: 0,
					total: 0
				}
			]
		}
	],
	subscriptions: 
	[
		{
			id: 0,
			customerId: 0,
			email: String,
			skuId: 0,
			skuName: String,
			skuType: Product,
			code: String,
			quantity: 0,
			supportQuantity: 0,
			total: 0,
			isPlan: False,
			isRenewal: False,
			subscriptionDurationDays: 0,
			renewalDate: 0001-01-01,
			licenseRef: String,
			licenseName: String,
			licenseAddress: String,
			licenseType: Free,
			expiryDate: 0001-01-01,
			licenseKey: 
			{
				ref: String,
				name: String,
				type: Free,
				meta: 0,
				hash: String,
				halg: String,
				expiry: 0001-01-01
			},
			licenseKeyText: String,
			createdDate: 0001-01-01,
			modifiedDate: 0001-01-01,
			cancelledDate: 0001-01-01,
			stripeSubscriptionId: String,
			emailId: 0,
			emailRenewalId: 0,
			emailExpiredId: 0,
			renewalSubscriptionId: 0,
			externalRef: String,
			notes: String,
			error: String
		}
	]
}