namespace Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type ImportXml() =
///<summary>
///XML string (encoded to base 64) containing data to import into EROS from external system.
///</summary>
[<ApiMember(DataType="string", Description="XML string (encoded to base 64) containing data to import into EROS from external system.", Name="XmlToImport", ParameterType="query")>]
member val XmlToImport:String = null with get,set
///<summary>
///Guid representing the external systems datasource information.
///</summary>
[<ApiMember(DataType="Guid", Description="Guid representing the external systems datasource information.", Name="SuiteDataSourceInstanceId", ParameterType="query")>]
member val SuiteDataSourceInstanceId:Guid = new Guid() with get,set
///<summary>
///Import data type.
///</summary>
[<ApiMember(DataType="Guid", Description="Import data type.", Name="ImportTypeId", ParameterType="query")>]
member val ImportTypeId:Guid = new Guid() with get,set
///<summary>
///Data collected from foreign system falls within now and this date.
///</summary>
[<ApiMember(DataType="DateTime", Description="Data collected from foreign system falls within now and this date.", Name="CollectionDate", ParameterType="query")>]
member val CollectionDate:DateTime = new DateTime() with get,set
///<summary>
///Bin Row Version of the last update
///</summary>
[<ApiMember(DataType="byte[]", Description="Bin Row Version of the last update", Name="RowVersion", ParameterType="query")>]
member val RowVersion:Byte[] = null with get,set
///<summary>
///If true, previous failed import attempts will be removed.
///</summary>
[<ApiMember(DataType="bool", Description="If true, previous failed import attempts will be removed.", Name="RemovePreviousAttempts", ParameterType="query")>]
member val RemovePreviousAttempts:Boolean = new Boolean() with get,set
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /csv/reply/ImportXml HTTP/1.1
Host: production-eros-platform-apisubscription.azurewebsites.net
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"XmlToImport":"String","CollectionDate":"0001-01-01T00:00:00.0000000","RowVersion":"AA==","RemovePreviousAttempts":false}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}