| POST | /api/Security | ||
|---|---|---|---|
| POST | /api/Security/{token} | 
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports AIM.WebService
Namespace Global
    Namespace AIM.WebService
        <DataContract>
        Public Partial Class AccountDetail
            <DataMember>
            Public Overridable Property Acct As Integer
            <DataMember>
            Public Overridable Property AcctType As String
            <DataMember>
            Public Overridable Property Name As String
        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
            '''<Summary>
            '''The OAuthToken token return by AeServices30
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="The OAuthToken token return by AeServices30", IsRequired:=true, Name:="OAuthToken", ParameterType:="Header")>
            Public Overridable Property OAuthToken As String
            '''<Summary>
            '''The Device ID of the Mobile Device. Not used for non-mobile devices.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="The Device ID of the Mobile Device. Not used for non-mobile devices.", Name:="DeviceId", ParameterType:="Header")>
            Public Overridable Property DeviceId As String
            '''<Summary>
            '''An identifier for your integration
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="An identifier for your integration", IsRequired:=true, Name:="AppId", ParameterType:="Header")>
            Public Overridable Property AppId 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
        '''<Summary>
        '''Login Service
        '''</Summary>
        <DataContract>
        Public Partial Class SecurityRequest
            Inherits BaseRequest
            '''<Summary>
            '''Employee ID or Customer Email
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="Employee ID or Customer Email", IsRequired:=true, Name:="Username", ParameterType:="query")>
            Public Overridable Property Username As String
            '''<Summary>
            '''Existing Token
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="Existing Token", Name:="Token", ParameterType:="query")>
            Public Overridable Property Token As String
            '''<Summary>
            '''Password of Employee or User
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="Password of Employee or User", IsRequired:=true, Name:="Password", ParameterType:="query")>
            Public Overridable Property Password As String
            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="DeviceID")>
            <ApiMember(DataType:="string", Description:="", IsRequired:=true, Name:="DeviceID", ParameterType:="query")>
            Public Overridable Property DeviceId As String
            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="AppID")>
            <ApiMember(DataType:="string", Description:="", IsRequired:=true, Name:="AppID", ParameterType:="query")>
            Public Overridable Property AppId As String
            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="Acct")>
            <ApiMember(DataType:="int", Description:="", Name:="Acct", ParameterType:="query")>
            Public Overridable Property Acct As Nullable(Of Integer)
            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="DeviceName")>
            <ApiMember(DataType:="string", Description:="", Name:="DeviceName", ParameterType:="query")>
            Public Overridable Property DeviceName As String
        End Class
        <DataContract>
        Public Partial Class SecurityResponse
            Inherits BaseResponse
            Public Sub New()
                AccountDetails = New List(Of AccountDetail)
            End Sub
            <DataMember>
            Public Overridable Property Token As String
            <DataMember>
            Public Overridable Property OAuthToken As String
            <DataMember>
            Public Overridable Property Domain As String
            <DataMember>
            Public Overridable Property IsAdmin As Boolean
            <DataMember>
            Public Overridable Property UserDetails As UserDetail
            <DataMember>
            Public Overridable Property AccountDetails As List(Of AccountDetail)
        End Class
        <DataContract>
        Public Partial Class UserDetail
            <DataMember>
            Public Overridable Property Firstname As String
            <DataMember>
            Public Overridable Property LastName As String
            <DataMember>
            Public Overridable Property Email As String
            <DataMember>
            Public Overridable Property Type As String
            <DataMember>
            Public Overridable Property Location As String
            <DataMember>
            Public Overridable Property LocationName As String
            <DataMember>
            Public Overridable Property AccountNumber As Nullable(Of Integer)
            <DataMember>
            Public Overridable Property TaxAuthority As String
            <DataMember>
            Public Overridable Property TaxAuthorityName As String
        End Class
    End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/Security HTTP/1.1 
Host: active-ewebservice.biz 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Username":"String","Token":"String","Password":"String","DeviceID":"String","AppID":"String","Acct":0,"DeviceName":"String","ApiKey":"String","OAuthToken":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"Token":"String","OAuthToken":"String","Domain":"String","IsAdmin":false,"UserDetails":{"Firstname":"String","LastName":"String","Email":"String","Type":"String","Location":"String","LocationName":"String","AccountNumber":0,"TaxAuthority":"String","TaxAuthorityName":"String"},"AccountDetails":[{"Acct":0,"AcctType":"String","Name":"String"}],"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}