POST | /v1/product-matching-update-callback |
---|
namespace ProductMatching.API.ServiceModel.DTOs
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<DataContract>]
[<AllowNullLiteral>]
type ProductMatch() =
[<DataMember(Name="retailerGuid")>]
member val RetailerGuid:Guid = new Guid() with get,set
[<DataMember(Name="retailerName")>]
member val RetailerName:String = null with get,set
[<DataMember(Name="brand")>]
member val Brand:String = null with get,set
[<DataMember(Name="productName")>]
member val ProductName:String = null with get,set
[<DataMember(Name="description")>]
member val Description:String = null with get,set
[<DataMember(Name="sku")>]
member val SKU:String = null with get,set
[<DataMember(Name="gtin")>]
member val GTIN:String = null with get,set
[<DataMember(Name="ean8")>]
member val EAN8:String = null with get,set
[<DataMember(Name="ean13")>]
member val EAN13:String = null with get,set
[<DataMember(Name="isbn")>]
member val ISBN:String = null with get,set
[<DataMember(Name="upc")>]
member val UPC:String = null with get,set
[<DataMember(Name="productImageUrl")>]
member val ProductImageUrl:Uri = null with get,set
[<DataMember(Name="productUrl")>]
member val ProductUrl:Uri = null with get,set
[<DataMember(Name="auditResult")>]
member val AuditResult:String = null with get,set
[<DataMember(Name="auditResultReasons")>]
member val AuditResultReasons:ResizeArray<String> = new ResizeArray<String>() with get,set
[<AllowNullLiteral>]
type PostProductMatchingUpdateCallbackRequest() =
member val ProductMatches:ResizeArray<ProductMatch> = new ResizeArray<ProductMatch>() with get,set
member val SourceUrl:Uri = null with get,set
[<AllowNullLiteral>]
type PostProductMatchingUpdateCallbackResponse() =
member val ResponseStatus:ResponseStatus = null with get,set
F# PostProductMatchingUpdateCallbackRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/product-matching-update-callback HTTP/1.1
Host: product-matching-api.kit.co
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
productMatches:
[
{
retailerGuid: 00000000000000000000000000000000,
retailerName: String,
brand: String,
productName: String,
description: String,
sku: String,
gtin: String,
ean8: String,
ean13: String,
isbn: String,
upc: String,
auditResult: String,
auditResultReasons:
[
String
]
}
]
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } } }