Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports FrameworkApi.Models
Namespace Global
Namespace FrameworkApi.Models
'''<Summary>
'''Retrieves communications from the Communication database to be saved to Framework
'''</Summary>
<Api(Description:="Retrieves communications from the Communication database to be saved to Framework")>
Public Partial Class GetCommunicationData
Implements ISubscription
'''<Summary>
'''Bin Row Version of the last update
'''</Summary>
<ApiMember(DataType:="byte[]", Description:="Bin Row Version of the last update", Name:="BinRowVersion")>
Public Overridable Property BinRowVersion As Byte()
'''<Summary>
'''Suite Data Source Instance Id to determine which licensees data to retrieve.
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Suite Data Source Instance Id to determine which licensees data to retrieve.", Name:="SuiteDataSourceInstanceId")>
Public Overridable Property SuiteDataSourceInstanceId As Guid Implements ISubscription.SuiteDataSourceInstanceId
'''<Summary>
'''Batch Call Number.
'''</Summary>
<ApiMember(DataType:="int", Description:="Batch Call Number.", Name:="BatchNumber")>
Public Overridable Property BatchNumber As Integer
'''<Summary>
'''Number of records to retrieve per call.
'''</Summary>
<ApiMember(DataType:="int", Description:="Number of records to retrieve per call.", Name:="BatchSize")>
Public Overridable Property BatchSize As Integer
Public Overridable Property IgnoreValidation As Boolean Implements ISubscription.IgnoreValidation
End Class
<ApiResponse(Description:="Communications Data for synching to Framework")>
Public Partial Class GetCommunicationDataResponse
'''<Summary>
'''Bin Row Version of the last update
'''</Summary>
<ApiMember(DataType:="byte[]", Description:="Bin Row Version of the last update", Name:="BinRowVersion")>
Public Overridable Property BinRowVersion As Byte()
'''<Summary>
'''Communication Data string (compressed/zipped)
'''</Summary>
<ApiMember(DataType:="string", Description:="Communication Data string (compressed/zipped)", Name:="Communications")>
Public Overridable Property Communications As String
Public Overridable Property ResponseStatus As ResponseStatus
End Class
End Namespace
End Namespace
VB.NET GetCommunicationData 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 /jsonl/reply/GetCommunicationData HTTP/1.1
Host: gatewayframeworkapi.pstpf.com.au
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"BinRowVersion":"AA==","BatchNumber":0,"BatchSize":0,"IgnoreValidation":true}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"BinRowVersion":"AA==","Communications":"String","ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}