POST | /v1/reports | Retrieve Report by ReportName and Filters |
---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Mercedes.VehicleManagement.API.ServiceModel
Imports Mercedes.VehicleManagement.API.Shared.POCO
Namespace Global
Namespace Mercedes.VehicleManagement.API.ServiceModel
Public Partial Class DashboardReportRequest
Implements IPost
'''<Summary>
'''Report Name
'''</Summary>
<ApiMember(Description:="Report Name", IsRequired:=true, ParameterType:="body")>
Public Overridable Property ReportName As String
'''<Summary>
'''Filters
'''</Summary>
<ApiMember(Description:="Filters", IsRequired:=true, ParameterType:="body")>
Public Overridable Property Filters As Dictionary(Of String, ReportFilter) = New Dictionary(Of String, ReportFilter)
'''<Summary>
'''Paging
'''</Summary>
<ApiMember(Description:="Paging", ParameterType:="body")>
Public Overridable Property Paging As ReportsPaging
'''<Summary>
'''Sorting
'''</Summary>
<ApiMember(Description:="Sorting", ParameterType:="body")>
Public Overridable Property Sorting As Dictionary(Of String, ReportSortType) = New Dictionary(Of String, ReportSortType)
End Class
End Namespace
Namespace Mercedes.VehicleManagement.API.Shared.POCO
Public Partial Class DashboardReportResult
Public Overridable Property TotalCount As Integer
Public Overridable Property ReportResult As IEnumerable(Of Object)
End Class
Public Partial Class ReportFilter
Public Overridable Property Type As ReportFilterType
Public Overridable Property Values As IEnumerable(Of String)
Public Overridable Property Start As Date?
Public Overridable Property [End] As Date?
Public Overridable Property HigherThan As Integer?
Public Overridable Property LowerThan As Integer?
End Class
Public Enum ReportFilterType
list
list_like
date
range
End Enum
Public Enum ReportSortType
asc
desc
End Enum
Public Partial Class ReportsPaging
Public Overridable Property Page As Integer
Public Overridable Property PageSize As Integer
End Class
End Namespace
End Namespace
VB.NET DashboardReportRequest DTOs
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 /v1/reports HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"reportName":"String","filters":{"String":{"type":"list","start":"\/Date(-62135596800000-0000)\/","end":"\/Date(-62135596800000-0000)\/","higherThan":0,"lowerThan":0}},"paging":{"page":0,"pageSize":0},"sorting":{"String":"asc"}}
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"totalCount":0}