' Options:
'Date: 2025-05-19 07:42:07
'Version: 8.40
'Tip: To override a DTO option, remove "''" prefix before updating
'BaseUrl: https://active-ewebservice.biz/aeservices30/api
'
'''GlobalNamespace: 
'''MakePartial: True
'''MakeVirtual: True
'''MakeDataContractsExtensible: False
'''AddReturnMarker: True
'''AddDescriptionAsComments: True
'''AddDataContractAttributes: False
'''AddIndexesToDataMembers: False
'''AddGeneratedCodeAttributes: False
'''AddResponseStatus: False
'''AddImplicitVersion: 
'''InitializeCollections: True
'''ExportValueTypes: False
'IncludeTypes: GetLocationsRequest.*
'''ExcludeTypes: 
'''AddNamespaces: 
'''AddDefaultXmlNamespace: http://schemas.servicestack.net/types

Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports AIM.WebService
Imports AIM

Namespace Global

    Namespace AIM

        <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
    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
        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

        '''<Summary>
        '''GetLocationsRequires active-e Inventory Service or active-e Customer Service or active 3rd Party E-Commerce or active-e Vortx E-Commerce.
        '''</Summary>
        <Route("/GetLocations", "GET")>
        <DataContract>
        Public Partial Class GetLocationsRequest
            Inherits BaseSecureRequest
            Implements IReturn(Of GetLocationsResponse)
            '''<Summary>
            '''Location lookup. If sent, all other parameters will be ignored.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="Location lookup. If sent, all other parameters will be ignored.", Format:="int64", Name:="LocationId", ParameterType:="query")>
            Public Overridable Property LocationId As Nullable(Of Long)

            <DataMember>
            Public Overridable Property InStorePickup As Nullable(Of Boolean)

            '''<Summary>
            '''Sent in Conjunction with InStorePickup boolean. Can be set to CONTRACT or ORDER.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="Sent in Conjunction with InStorePickup boolean. Can be set to CONTRACT or ORDER.", Format:="int64", Name:="InStorePickupType", ParameterType:="query")>
            Public Overridable Property InStorePickupType As String
        End Class

        <DataContract>
        Public Partial Class GetLocationsResponse
            Inherits BaseResponse
            Public Sub New()
                Locations = New List(Of LocationInfo)
            End Sub

            <DataMember>
            Public Overridable Property Locations As List(Of LocationInfo)
        End Class
    End Namespace
End Namespace