ServiceStack Home (Live)

<back to all web services

Customer

The following routes are available for this service:
All Verbs/Customer
All Verbs/Customer/{Id}
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports MyApp.ServiceModel

Namespace Global

    Namespace MyApp.ServiceModel

        Public Partial Class Customer
            Implements IAddress
            Public Overridable Property Id As Integer
            Public Overridable Property Email As String
            Public Overridable Property DisplayName As String
            Public Overridable Property FirstName As String
            Public Overridable Property LastName As String
            Public Overridable Property Company As String
            Public Overridable Property PhoneNumber As String
            Public Overridable Property AddressLine1 As String Implements IAddress.AddressLine1
            Public Overridable Property AddressLine2 As String Implements IAddress.AddressLine2
            Public Overridable Property AddressCity As String Implements IAddress.AddressCity
            Public Overridable Property AddressZip As String Implements IAddress.AddressZip
            Public Overridable Property AddressState As String Implements IAddress.AddressState
            Public Overridable Property AddressCountry As String Implements IAddress.AddressCountry
            Public Overridable Property StripeCustomerId As String
            Public Overridable Property StripeCouponId As String
            Public Overridable Property Plan As String
            Public Overridable Property CreatedDate As Date
            Public Overridable Property IsReferrer As Boolean
            Public Overridable Property Orders As List(Of Order)
            Public Overridable Property Subscriptions As List(Of Subscription)
        End Class

        Public Partial Class Order
            Implements IAddress
            Public Overridable Property Id As Integer
            Public Overridable Property CustomerId As Integer
            Public Overridable Property ProductName As String
            Public Overridable Property FirstName As String
            Public Overridable Property LastName As String
            Public Overridable Property Email As String
            Public Overridable Property Company As String
            Public Overridable Property PhoneNumber As String
            Public Overridable Property AddressLine1 As String Implements IAddress.AddressLine1
            Public Overridable Property AddressLine2 As String Implements IAddress.AddressLine2
            Public Overridable Property AddressCity As String Implements IAddress.AddressCity
            Public Overridable Property AddressZip As String Implements IAddress.AddressZip
            Public Overridable Property AddressState As String Implements IAddress.AddressState
            Public Overridable Property AddressCountry As String Implements IAddress.AddressCountry
            Public Overridable Property AgreeTerms As Boolean
            Public Overridable Property Notes As String
            Public Overridable Property Last4 As String
            Public Overridable Property SubTotal As Integer
            Public Overridable Property CouponId As String
            Public Overridable Property Discount As Integer
            Public Overridable Property Tax As Integer
            Public Overridable Property Total As Integer
            Public Overridable Property ItemQuantity As Integer
            Public Overridable Property AuthorizedQuantity As Integer?
            Public Overridable Property SubscriptionId As Integer?
            Public Overridable Property LicenseRef As String
            Public Overridable Property PaymentId As Integer?
            Public Overridable Property EmailId As Integer?
            Public Overridable Property Paid As Boolean
            Public Overridable Property CreatedDate As Date
            Public Overridable Property ModifiedDate As Date
            Public Overridable Property ModifiedBy As String
            Public Overridable Property CancelledDate As Date?
            Public Overridable Property CancelledReason As String
            Public Overridable Property IpAddress As String
            Public Overridable Property OrderDetails As List(Of OrderDetail)
        End Class

        Public Partial Class OrderDetail
            Public Overridable Property Id As Integer
            Public Overridable Property OrderId As Integer
            Public Overridable Property SkuId As Integer
            Public Overridable Property SkuType As SkuType
            Public Overridable Property Price As Integer
            Public Overridable Property Description As String
            Public Overridable Property Quantity As Integer
            Public Overridable Property Total As Integer
        End Class

        Public Enum SkuType
            Product
            PerDev
            PerCore
            Site
            Support
            Training
            Register
            Payment
        End Enum

        Public Partial Class Subscription
            Public Overridable Property Id As Integer
            Public Overridable Property CustomerId As Integer
            Public Overridable Property Email As String
            Public Overridable Property SkuId As Integer
            Public Overridable Property SkuName As String
            Public Overridable Property SkuType As SkuType
            Public Overridable Property Code As String
            Public Overridable Property Quantity As Integer
            Public Overridable Property SupportQuantity As Integer
            Public Overridable Property Total As Integer
            Public Overridable Property IsPlan As Boolean
            Public Overridable Property IsRenewal As Boolean
            Public Overridable Property SubscriptionDurationDays As Integer
            Public Overridable Property RenewalDate As Date?
            Public Overridable Property LicenseRef As String
            Public Overridable Property LicenseName As String
            Public Overridable Property LicenseAddress As String
            Public Overridable Property LicenseType As LicenseType
            Public Overridable Property ExpiryDate As Date
            Public Overridable Property LicenseKey As LicenseKey
            Public Overridable Property LicenseKeyText As String
            Public Overridable Property CreatedDate As Date
            Public Overridable Property ModifiedDate As Date
            Public Overridable Property CancelledDate As Date?
            Public Overridable Property StripeSubscriptionId As String
            Public Overridable Property EmailId As Integer?
            Public Overridable Property EmailRenewalId As Integer?
            Public Overridable Property EmailExpiredId As Integer?
            Public Overridable Property RenewalSubscriptionId As Integer?
            Public Overridable Property ExternalRef As String
            Public Overridable Property Notes As String
            Public Overridable Property [Error] As String
        End Class
    End Namespace

    Namespace ServiceStack

        Public Partial Class LicenseKey
            Public Overridable Property Ref As String
            Public Overridable Property Name As String
            Public Overridable Property Type As LicenseType
            Public Overridable Property Meta As Long
            Public Overridable Property Hash As String
            Public Overridable Property Halg As String
            Public Overridable Property Expiry As Date
        End Class

        Public Enum LicenseType
            Free
            FreeIndividual
            FreeOpenSource
            Indie
            Business
            Enterprise
            TextIndie
            TextBusiness
            OrmLiteIndie
            OrmLiteBusiness
            RedisIndie
            RedisBusiness
            AwsIndie
            AwsBusiness
            Trial
            Site
            TextSite
            RedisSite
            OrmLiteSite
        End Enum
    End Namespace
End Namespace

VB.NET Customer DTOs

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

HTTP + XML

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

POST /Customer HTTP/1.1 
Host: account.servicestack.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<Customer xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/MyApp.ServiceModel">
  <AddressCity>String</AddressCity>
  <AddressCountry>String</AddressCountry>
  <AddressLine1>String</AddressLine1>
  <AddressLine2>String</AddressLine2>
  <AddressState>String</AddressState>
  <AddressZip>String</AddressZip>
  <Company>String</Company>
  <CreatedDate>0001-01-01T00:00:00</CreatedDate>
  <DisplayName>String</DisplayName>
  <Email>String</Email>
  <FirstName>String</FirstName>
  <Id>0</Id>
  <IsReferrer>false</IsReferrer>
  <LastName>String</LastName>
  <Orders>
    <Order>
      <AddressCity>String</AddressCity>
      <AddressCountry>String</AddressCountry>
      <AddressLine1>String</AddressLine1>
      <AddressLine2>String</AddressLine2>
      <AddressState>String</AddressState>
      <AddressZip>String</AddressZip>
      <AgreeTerms>false</AgreeTerms>
      <AuthorizedQuantity>0</AuthorizedQuantity>
      <CancelledDate>0001-01-01T00:00:00</CancelledDate>
      <CancelledReason>String</CancelledReason>
      <Company>String</Company>
      <CouponId>String</CouponId>
      <CreatedDate>0001-01-01T00:00:00</CreatedDate>
      <CustomerId>0</CustomerId>
      <Discount>0</Discount>
      <Email>String</Email>
      <EmailId>0</EmailId>
      <FirstName>String</FirstName>
      <Id>0</Id>
      <IpAddress>String</IpAddress>
      <ItemQuantity>0</ItemQuantity>
      <Last4>String</Last4>
      <LastName>String</LastName>
      <LicenseRef>String</LicenseRef>
      <ModifiedBy>String</ModifiedBy>
      <ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
      <Notes>String</Notes>
      <OrderDetails>
        <OrderDetail>
          <Description>String</Description>
          <Id>0</Id>
          <OrderId>0</OrderId>
          <Price>0</Price>
          <Quantity>0</Quantity>
          <SkuId>0</SkuId>
          <SkuType>Product</SkuType>
          <Total>0</Total>
        </OrderDetail>
      </OrderDetails>
      <Paid>false</Paid>
      <PaymentId>0</PaymentId>
      <PhoneNumber>String</PhoneNumber>
      <ProductName>String</ProductName>
      <SubTotal>0</SubTotal>
      <SubscriptionId>0</SubscriptionId>
      <Tax>0</Tax>
      <Total>0</Total>
    </Order>
  </Orders>
  <PhoneNumber>String</PhoneNumber>
  <Plan>String</Plan>
  <StripeCouponId>String</StripeCouponId>
  <StripeCustomerId>String</StripeCustomerId>
  <Subscriptions>
    <Subscription>
      <CancelledDate>0001-01-01T00:00:00</CancelledDate>
      <Code>String</Code>
      <CreatedDate>0001-01-01T00:00:00</CreatedDate>
      <CustomerId>0</CustomerId>
      <Email>String</Email>
      <EmailExpiredId>0</EmailExpiredId>
      <EmailId>0</EmailId>
      <EmailRenewalId>0</EmailRenewalId>
      <Error>String</Error>
      <ExpiryDate>0001-01-01T00:00:00</ExpiryDate>
      <ExternalRef>String</ExternalRef>
      <Id>0</Id>
      <IsPlan>false</IsPlan>
      <IsRenewal>false</IsRenewal>
      <LicenseAddress>String</LicenseAddress>
      <LicenseKey xmlns:d4p1="http://schemas.datacontract.org/2004/07/ServiceStack">
        <d4p1:Expiry>0001-01-01T00:00:00</d4p1:Expiry>
        <d4p1:Halg>String</d4p1:Halg>
        <d4p1:Hash>String</d4p1:Hash>
        <d4p1:Meta>0</d4p1:Meta>
        <d4p1:Name>String</d4p1:Name>
        <d4p1:Ref>String</d4p1:Ref>
        <d4p1:Type>Free</d4p1:Type>
      </LicenseKey>
      <LicenseKeyText>String</LicenseKeyText>
      <LicenseName>String</LicenseName>
      <LicenseRef>String</LicenseRef>
      <LicenseType>Free</LicenseType>
      <ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
      <Notes>String</Notes>
      <Quantity>0</Quantity>
      <RenewalDate>0001-01-01T00:00:00</RenewalDate>
      <RenewalSubscriptionId>0</RenewalSubscriptionId>
      <SkuId>0</SkuId>
      <SkuName>String</SkuName>
      <SkuType>Product</SkuType>
      <StripeSubscriptionId>String</StripeSubscriptionId>
      <SubscriptionDurationDays>0</SubscriptionDurationDays>
      <SupportQuantity>0</SupportQuantity>
      <Total>0</Total>
    </Subscription>
  </Subscriptions>
</Customer>