POST | /api/AddCustomer |
---|
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
'''<Summary>
'''AddCustomerRequires active-e Customer Service.
'''</Summary>
<DataContract>
Public Partial Class AddCustomerRequest
Inherits BaseSecureRequest
Public Sub New()
FormInputList = New List(Of FormInput)
End Sub
'''<Summary>
'''Location ID
'''</Summary>
<DataMember>
<ApiMember(DataType:="integer", Description:="Location ID", Format:="int64", IsRequired:=true, Name:="LocationId", ParameterType:="query")>
Public Overridable Property LocationId As Nullable(Of Long)
'''<Summary>
'''Customer Default Id
'''</Summary>
<DataMember>
<ApiMember(DataType:="integer", Description:="Customer Default Id", Format:="int64", IsRequired:=true, Name:="CustomerDefaultId", ParameterType:="query")>
Public Overridable Property CustomerDefaultId As Nullable(Of Long)
'''<Summary>
'''Tax Authority Id
'''</Summary>
<DataMember>
<ApiMember(DataType:="integer", Description:="Tax Authority Id", Format:="int64", IsRequired:=true, Name:="TaxAuthorityId", ParameterType:="query")>
Public Overridable Property TaxAuthorityId As Nullable(Of Long)
<DataMember>
Public Overridable Property Name As String
<DataMember>
Public Overridable Property Attn As String
<DataMember>
Public Overridable Property Address1 As String
<DataMember>
Public Overridable Property Address2 As String
<DataMember>
Public Overridable Property City As String
<DataMember>
Public Overridable Property State As String
<DataMember>
Public Overridable Property Zip As String
<DataMember>
Public Overridable Property Country As String
<DataMember>
Public Overridable Property HomePhone As String
<DataMember>
Public Overridable Property WorkPhone As String
<DataMember>
Public Overridable Property CellPhone As String
<DataMember>
Public Overridable Property Employer As String
<DataMember>
Public Overridable Property SS As String
<DataMember>
Public Overridable Property Email As String
'''<Summary>
'''Email Method. Set this to Word, PDF, HTML, or None
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Email Method. Set this to Word, PDF, HTML, or None", Name:="EmailMethod", ParameterType:="query")>
Public Overridable Property EmailMethod As String
<DataMember>
Public Overridable Property Notes As String
<DataMember>
Public Overridable Property DriversLicenseInfo As LicenseInfo
'''<Summary>
'''
'''</Summary>
<DataMember>
<ApiMember(DataType:="array", Description:="", Name:="FormInputList", ParameterType:="query")>
Public Overridable Property FormInputList As List(Of FormInput)
'''<Summary>
'''Can be SKIP, CHECK, or CHECKONLY. Defaults to SKIP. SKIP will not do a duplicate check. CHECK will do a duplicate check and the customer will not added if duplicates are found. CHECKONLY will just do a duplicate check; the customer will not be added. Duplicate check logic is based on the AIM system variable CustDupCheck.
'''</Summary>
<DataMember>
<ApiMember(Description:="Can be SKIP, CHECK, or CHECKONLY. Defaults to SKIP. SKIP will not do a duplicate check. CHECK will do a duplicate check and the customer will not added if duplicates are found. CHECKONLY will just do a duplicate check; the customer will not be added. Duplicate check logic is based on the AIM system variable CustDupCheck.", Name:="DuplicateCheckMode")>
Public Overridable Property DuplicateCheckMode As String
<DataContract>
Public Partial Class LicenseInfo
<DataMember>
Public Overridable Property Number As String
<DataMember>
Public Overridable Property Height As String
<DataMember>
Public Overridable Property Weight As String
<DataMember>
Public Overridable Property Hair As String
<DataMember>
Public Overridable Property Eyes As String
<DataMember>
Public Overridable Property Expiration As String
<DataMember>
Public Overridable Property Birthday As String
<DataMember>
Public Overridable Property Ethnicity As String
<DataMember>
Public Overridable Property Gender As String
<DataMember>
Public Overridable Property State As String
End Class
End Class
<DataContract>
Public Partial Class AddCustomerResponse
Inherits BaseResponse
Public Sub New()
PossibleDuplicates = New List(Of CustomerSearchRecord)
End Sub
<DataMember>
Public Overridable Property Id As Nullable(Of Integer)
'''<Summary>
'''Only returned if PerformDuplicateCheck parameter was passed in and possible duplicates were found. If this is returned, the customer record was *not* created.
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Only returned if PerformDuplicateCheck parameter was passed in and possible duplicates were found. If this is returned, the customer record was *not* created.", Name:="PossibleDuplicates")>
Public Overridable Property PossibleDuplicates As List(Of CustomerSearchRecord)
End Class
<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(Name:="FormInput")>
Public Partial Class FormInput
'''<Summary>
'''Field Name of the Input Field
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Field Name of the Input Field", IsRequired:=true, Name:="Key", ParameterType:="query")>
Public Overridable Property Key As String
'''<Summary>
'''Value of the Input Field.
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Value of the Input Field.", IsRequired:=true, Name:="Value", ParameterType:="query")>
Public Overridable Property Value As String
'''<Summary>
'''Whether or not the field is encryped with the C2B encryption key.
'''</Summary>
<DataMember>
<ApiMember(DataType:="boolean", Description:="Whether or not the field is encryped with the C2B encryption key.", IsRequired:=true, Name:="Encrypted", ParameterType:="query")>
Public Overridable Property Encrypted As Boolean
End Class
End Namespace
End Namespace
VB.NET AddCustomerRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/AddCustomer HTTP/1.1
Host: active-ewebservice.biz
Accept: application/json
Content-Type: application/json
Content-Length: length
{"LocationId":0,"CustomerDefaultId":0,"TaxAuthorityId":0,"Name":"String","Attn":"String","Address1":"String","Address2":"String","City":"String","State":"String","Zip":"String","Country":"String","HomePhone":"String","WorkPhone":"String","CellPhone":"String","Employer":"String","SS":"String","Email":"String","EmailMethod":"String","Notes":"String","DriversLicenseInfo":{"Number":"String","Height":"String","Weight":"String","Hair":"String","Eyes":"String","Expiration":"String","Birthday":"String","Ethnicity":"String","Gender":"String","State":"String"},"FormInputList":[{"Key":"String","Value":"String","Encrypted":false}],"DuplicateCheckMode":"String","Token":"String","DeviceId":"String","AppId":"String","ApiKey":"String","OAuthToken":"String"}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"Id":0,"PossibleDuplicates":[{"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"}],"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}