Framework API

<back to all web services

GetCommunicationData

Retrieves communications from the Communication database to be saved to Framework

Requires Authentication
namespace FrameworkApi.Models

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<ApiResponse(Description="Communications Data for synching to Framework")>]
    [<AllowNullLiteral>]
    type GetCommunicationDataResponse() = 
        ///<summary>
        ///Bin Row Version of the last update
        ///</summary>
        [<ApiMember(DataType="byte[]", Description="Bin Row Version of the last update", Name="BinRowVersion")>]
        member val BinRowVersion:Byte[] = null with get,set

        ///<summary>
        ///Communication Data string (compressed/zipped)
        ///</summary>
        [<ApiMember(DataType="string", Description="Communication Data string (compressed/zipped)", Name="Communications")>]
        member val Communications:String = null with get,set

        member val ResponseStatus:ResponseStatus = null with get,set

    ///<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")>]
    [<AllowNullLiteral>]
    type GetCommunicationData() = 
        ///<summary>
        ///Bin Row Version of the last update
        ///</summary>
        [<ApiMember(DataType="byte[]", Description="Bin Row Version of the last update", Name="BinRowVersion")>]
        member val BinRowVersion:Byte[] = null with get,set

        ///<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")>]
        member val SuiteDataSourceInstanceId:Guid = new Guid() with get,set

        ///<summary>
        ///Batch Call Number.
        ///</summary>
        [<ApiMember(DataType="int", Description="Batch Call Number.", Name="BatchNumber")>]
        member val BatchNumber:Int32 = new Int32() with get,set

        ///<summary>
        ///Number of records to retrieve per call.
        ///</summary>
        [<ApiMember(DataType="int", Description="Number of records to retrieve per call.", Name="BatchSize")>]
        member val BatchSize:Int32 = new Int32() with get,set

        member val IgnoreValidation:Boolean = new Boolean() with get,set

F# GetCommunicationData DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /csv/reply/GetCommunicationData HTTP/1.1 
Host: gatewayframeworkapi.pstpf.com.au 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"BinRowVersion":"AA==","BatchNumber":0,"BatchSize":0,"IgnoreValidation":true}
HTTP/1.1 200 OK
Content-Type: text/csv
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"}}}