Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports WebService.AppApi.Models
Imports WebService.AppApi.Models.Base
Namespace Global
Namespace WebService.AppApi.Models
Public Partial Class AutoLogin
Inherits ApiServiceRequest
Public Overridable Property SystemUserId As Integer
Public Overridable Property RefreshToken As String
Public Overridable Property UtcOffset As Integer
End Class
Public Partial Class AutoLoginResponse
Inherits ApiServiceResponse
Public Overridable Property Data As LoginData
End Class
Public Partial Class LoginData
Public Sub New()
Outlets = New List(Of OutletData)
End Sub
Public Overridable Property SystemUserId As Integer
Public Overridable Property ClientId As Integer
Public Overridable Property VatValue As Decimal
Public Overridable Property RefreshToken As String
Public Overridable Property FriendlyName As String
Public Overridable Property Outlets As List(Of OutletData)
Public Overridable Property UpliftRequestSyncInterval As Integer
Public Overridable Property EnableReturnOfStock As Boolean
Public Overridable Property EnableTimeKeeping As Boolean
Public Overridable Property EnableCustomerComplaintForm As Boolean
Public Overridable Property ClientLogoUrl As String
Public Overridable Property ClientColor As String
Public Overridable Property ClientName As String
End Class
Public Partial Class OutletData
Public Sub New()
AssignedPrincipalIds = New List(Of Integer)
AssignedRegions = New List(Of OutletRegionData)
End Sub
Public Overridable Property Id As Integer
Public Overridable Property Name As String
Public Overridable Property LastRequestedDate As String
Public Overridable Property HasGeneralUpliftRequest As Boolean
Public Overridable Property UpliftRequestCount As Integer
Public Overridable Property AssignedPrincipalIds As List(Of Integer)
Public Overridable Property AssignedRegions As List(Of OutletRegionData)
Public Overridable Property Channel As String
Public Overridable Property NextScheduledDate As String
End Class
Public Partial Class OutletRegionData
Public Overridable Property PrincipalId As Integer
Public Overridable Property Region As String
End Class
End Namespace
Namespace WebService.AppApi.Models.Base
Public Partial Class ApiServiceRequest
Implements IServiceRequest
Implements IHasApiKey
Implements IHasDeviceInfo
'''<Summary>
'''The API Key required for authentication
'''</Summary>
<ApiMember(DataType:="string", Description:="The API Key required for authentication", IsRequired:=true)>
Public Overridable Property ApiKey As String
'''<Summary>
'''Latitude of the user making this request
'''</Summary>
<ApiMember(DataType:="double", Description:="Latitude of the user making this request")>
Public Overridable Property Latitude As Double
'''<Summary>
'''Longitude of the user making this request
'''</Summary>
<ApiMember(DataType:="double", Description:="Longitude of the user making this request")>
Public Overridable Property Longitude As Double
End Class
Public Partial Class ApiServiceResponse
Implements IServiceResponse
'''<Summary>
'''Information about the response.
'''</Summary>
<ApiMember(Description:="Information about the response.", IsRequired:=true)>
Public Overridable Property Description As String
'''<Summary>
'''Heading or summary of the response.
'''</Summary>
<ApiMember(Description:="Heading or summary of the response.", IsRequired:=true)>
Public Overridable Property Heading As String
'''<Summary>
'''Did the intended operation for this response complete successfully?
'''</Summary>
<ApiMember(DataType:="boolean", Description:="Did the intended operation for this response complete successfully?", IsRequired:=true)>
Public Overridable Property WasSuccessful As Boolean
Public Overridable Property ResponseStatus As ResponseStatus
End Class
End Namespace
End Namespace
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 /json/reply/AutoLogin HTTP/1.1
Host: returnit-api-dev.happen.zone
Accept: application/json
Content-Type: application/json
Content-Length: length
{"SystemUserId":0,"RefreshToken":"String","UtcOffset":0,"ApiKey":"String","Latitude":0,"Longitude":0}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"Data":{"SystemUserId":0,"ClientId":0,"VatValue":0,"RefreshToken":"String","FriendlyName":"String","Outlets":[{}],"UpliftRequestSyncInterval":0,"EnableReturnOfStock":false,"EnableTimeKeeping":false,"EnableCustomerComplaintForm":false,"ClientLogoUrl":"String","ClientColor":"String","ClientName":"String"},"Description":"String","Heading":"String","WasSuccessful":false,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}