AIM Web Services

<back to all web services

CustomerInfoRequest

CustomerInfo
Requires active-e Customer Service.

The following routes are available for this service:
GET/api/CustomerInfo
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports AIM.WebService
Imports AIM
Imports AIM.Global.Utils

Namespace Global

    Namespace AIM

        <DataContract>
        Public Partial Class CustomerDefaultInfo
            <DataMember>
            Public Overridable Property Id As Long

            <DataMember>
            Public Overridable Property Desc As String

            <DataMember>
            Public Overridable Property ShortDesc As String
        End Class

        <DataContract>
        Public Partial Class CustomerSearchRecord
            Inherits BindableObject
            Public Sub New()
                DependantInfo = New List(Of DependantRecord)
            End Sub

            <DataMember>
            Public Overridable Property Pk As Long

            <DataMember>
            Public Overridable Property Acct As Integer

            <DataMember>
            Public Overridable Property Last As String

            <DataMember>
            Public Overridable Property Name As String

            <DataMember>
            Public Overridable Property Addr1 As String

            <DataMember>
            Public Overridable Property Addr2 As String

            <DataMember>
            Public Overridable Property City As String

            <DataMember>
            Public Overridable Property St As String

            <DataMember>
            Public Overridable Property Zip As String

            <DataMember>
            Public Overridable Property Phone As String

            <DataMember>
            Public Overridable Property Email As String

            <DataMember>
            Public Overridable Property OpenInvoices As Boolean

            <DataMember>
            Public Overridable Property RentalActivity As Boolean

            <DataMember>
            Public Overridable Property StLoc As String

            <DataMember>
            Public Overridable Property Hold As Boolean

            <DataMember>
            Public Overridable Property Barcode As String

            <DataMember>
            Public Overridable Property Color As Integer

            <DataMember>
            Public Overridable Property DependantInfo As List(Of DependantRecord)

            <DataMember>
            Public Overridable Property AdditionalDetails As AdditionalDetail

            <DataMember>
            Public Overridable Property MatchedOn As String

            <DataContract>
            Public Partial Class DependantRecord
                <DataMember>
                Public Overridable Property Name As String

                <DataMember>
                Public Overridable Property OnlineId As String

                <DataMember>
                Public Overridable Property SchoolDistrict As String

                <DataMember>
                Public Overridable Property School As String

                <DataMember>
                Public Overridable Property Id As Long
            End Class

            <DataContract>
            Public Partial Class AdditionalDetail
                <DataMember>
                Public Overridable Property CreationDate As Date

                <DataMember>
                Public Overridable Property LastModifiedDate As Date

                <DataMember>
                Public Overridable Property Notes As String

                <DataMember>
                Public Overridable Property CustomerDefault As CustomerDefaultInfo

                <DataMember>
                Public Overridable Property TaxAuthority As TaxAuthorityInfo

                <DataMember>
                Public Overridable Property CanCharge As Boolean

                <DataMember>
                Public Overridable Property PopupNotes As String

                <DataMember>
                Public Overridable Property DlNumber As String

                <DataMember>
                Public Overridable Property Phone2 As String

                <DataMember>
                Public Overridable Property Phone3 As String

                <DataMember>
                Public Overridable Property Phone4 As String

                <DataMember>
                Public Overridable Property Location As LocationInfo
            End Class
        End Class

        <DataContract>
        Public Partial Class LocationInfo
            <DataMember>
            Public Overridable Property Id As Long

            <DataMember>
            Public Overridable Property Desc As String

            <DataMember>
            Public Overridable Property ShortDesc As String

            <DataMember>
            Public Overridable Property Region As String

            <DataMember>
            Public Overridable Property Latitude As Decimal

            <DataMember>
            Public Overridable Property Longitude As Decimal

            <DataMember>
            Public Overridable Property InStorePickup As String

            <DataMember>
            Public Overridable Property Active As Boolean

            <DataMember>
            Public Overridable Property CashSaleAcct As Nullable(Of Integer)
        End Class

        <DataContract>
        Public Partial Class TaxAuthorityInfo
            <DataMember>
            Public Overridable Property Id As Long

            <DataMember>
            Public Overridable Property Desc As String

            <DataMember>
            Public Overridable Property ShortDesc As String
        End Class
    End Namespace

    Namespace AIM.Global.Utils

        <DataContract>
        Public Partial Class BindableObject
        End Class
    End Namespace

    Namespace AIM.WebService

        <DataContract>
        Public Partial Class BaseRequest
            '''<Summary>
            '''This is your AIM API Key provided by Tri-Tech
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="This is your AIM API Key provided by Tri-Tech", IsRequired:=true, Name:="ApiKey", ParameterType:="header")>
            Public Overridable Property ApiKey As String

            <DataMember>
            <ApiMember(DataType:="string", Name:="OAuthToken", ParameterType:="header")>
            Public Overridable Property OAuthToken As String
        End Class

        <DataContract>
        Public Partial Class BaseResponse
            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="BaseResponseResult", Description:="", Name:="Status", ParameterType:="body")>
            Public Overridable Property Status As BaseResponseResult

            <DataContract>
            Public Partial Class BaseResponseResult
                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="StatusCode", ParameterType:="body")>
                Public Overridable Property StatusCode As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="Login", ParameterType:="body")>
                Public Overridable Property Login As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="ErrorCode", ParameterType:="body")>
                Public Overridable Property ErrorCode As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="ErrorDisplayText", ParameterType:="body")>
                Public Overridable Property ErrorDisplayText As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="ErrorMessage", ParameterType:="body")>
                Public Overridable Property ErrorMessage As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", ExcludeInSchema:=true, Name:="DomainName", ParameterType:="body")>
                Public Overridable Property DomainName As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", ExcludeInSchema:=true, Name:="IPAddress", ParameterType:="body")>
                Public Overridable Property IpAddress As String
            End Class
        End Class

        <DataContract>
        Public Partial Class BaseSecureRequest
            Inherits BaseRequest
            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="", Name:="Token", ParameterType:="Header")>
            Public Overridable Property Token As String

            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="", Name:="DeviceId", ParameterType:="Header")>
            Public Overridable Property DeviceId As String

            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="", IsRequired:=true, Name:="AppId", ParameterType:="Header")>
            Public Overridable Property AppId As String
        End Class

        <DataContract>
        Public Partial Class CategoryLevelDiscount
            <DataMember>
            Public Overridable Property Category As Integer

            <DataMember>
            Public Overridable Property SubCategory As Nullable(Of Integer)

            <DataMember>
            Public Overridable Property DiscountType As String

            <DataMember>
            Public Overridable Property DiscountAmount As Decimal
        End Class

        <DataContract>
        Public Partial Class CustomerDiscountInfo
            Public Sub New()
                CategoryLevelDiscounts = New List(Of CategoryLevelDiscount)
            End Sub

            <DataMember>
            Public Overridable Property AccessoryInventory As Decimal

            <DataMember>
            Public Overridable Property SerializedInventory As Decimal

            <DataMember>
            Public Overridable Property ShortTermRental As Decimal

            <DataMember>
            Public Overridable Property NonInventory As Decimal

            <DataMember>
            Public Overridable Property Labor As Decimal

            <DataMember>
            Public Overridable Property MediaInventory As Decimal

            <DataMember>
            Public Overridable Property CategoryLevelDiscounts As List(Of CategoryLevelDiscount)

            <DataMember>
            Public Overridable Property PriceLevel As String
        End Class

        <DataContract>
        Public Partial Class CustomerEmailInfo
            <DataMember>
            Public Overridable Property Description As String

            <DataMember>
            Public Overridable Property Email As String

            <DataMember>
            Public Overridable Property Method As String

            <DataMember>
            Public Overridable Property Type As String
        End Class

        '''<Summary>
        '''CustomerInfoRequires active-e Customer Service.
        '''</Summary>
        <DataContract>
        Public Partial Class CustomerInfoRequest
            Inherits BaseSecureRequest
            <DataMember>
            Public Overridable Property Acct As Integer
        End Class

        <DataContract>
        Public Partial Class CustomerInfoResponse
            Inherits BaseResponse
            Public Sub New()
                Memberships = New List(Of CustomerMembershipInfo)
                Emails = New List(Of CustomerEmailInfo)
            End Sub

            <DataMember>
            Public Overridable Property Customer As CustomerSearchRecord

            <DataMember>
            Public Overridable Property DiscountInfo As CustomerDiscountInfo

            <DataMember>
            Public Overridable Property Memberships As List(Of CustomerMembershipInfo)

            <DataMember>
            Public Overridable Property Emails As List(Of CustomerEmailInfo)
        End Class

        <DataContract>
        Public Partial Class CustomerMembershipInfo
            <DataMember>
            Public Overridable Property Description As String

            <DataMember>
            Public Overridable Property TeeLevel As Integer

            <DataMember>
            Public Overridable Property WebTeeLevel As Integer

            <DataMember>
            Public Overridable Property StationLevel As Integer
        End Class
    End Namespace
End Namespace

VB.NET CustomerInfoRequest DTOs

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

HTTP + OTHER

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

GET /api/CustomerInfo HTTP/1.1 
Host: active-ewebservice.biz 
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"Customer":{"Pk":0,"Acct":0,"Last":"String","Name":"String","Addr1":"String","Addr2":"String","City":"String","St":"String","Zip":"String","Phone":"String","Email":"String","OpenInvoices":false,"RentalActivity":false,"StLoc":"String","Hold":false,"Barcode":"String","Color":0,"DependantInfo":[{"Name":"String","OnlineId":"String","SchoolDistrict":"String","School":"String","Id":0}],"AdditionalDetails":{"Notes":"String","CustomerDefault":{"Id":0,"Desc":"String","ShortDesc":"String"},"TaxAuthority":{"Id":0,"Desc":"String","ShortDesc":"String"},"CanCharge":false,"PopupNotes":"String","DlNumber":"String","Phone2":"String","Phone3":"String","Phone4":"String","Location":{"Id":0,"Desc":"String","ShortDesc":"String","Region":"String","Latitude":0,"Longitude":0,"InStorePickup":"String","Active":false,"CashSaleAcct":0}},"MatchedOn":"String"},"DiscountInfo":{"AccessoryInventory":0,"SerializedInventory":0,"ShortTermRental":0,"NonInventory":0,"Labor":0,"MediaInventory":0,"CategoryLevelDiscounts":[{"Category":0,"SubCategory":0,"DiscountType":"String","DiscountAmount":0}],"PriceLevel":"String"},"Memberships":[{"Description":"String","TeeLevel":0,"WebTeeLevel":0,"StationLevel":0}],"Emails":[{"Description":"String","Email":"String","Method":"String","Type":"String"}],"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}