| POST | /v3.5/product/search |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports GeniuslinkAPI.ServiceModel.V4.Products.Requests
Imports Geniuslink.Products.QueuedService.Contracts.V1.DTOs
Namespace Global
Namespace Geniuslink.Products.QueuedService.Contracts.V1.DTOs
<DataContract>
Public Partial Class AudiobookAttributes
Inherits BookAttributes
End Class
<DataContract>
Public Partial Class BookAttributes
<DataMember(Name:="authors", EmitDefaultValue:=false)>
Public Overridable Property Authors As List(Of String)
End Class
<DataContract>
Public Partial Class EBookAttributes
Inherits BookAttributes
End Class
<DataContract>
Public Partial Class ItemAttributes
<DataMember(Name:="book", EmitDefaultValue:=false)>
Public Overridable Property Book As BookAttributes
<DataMember(Name:="audiobook", EmitDefaultValue:=false)>
Public Overridable Property Audiobook As AudiobookAttributes
<DataMember(Name:="ebook", EmitDefaultValue:=false)>
Public Overridable Property EBook As EBookAttributes
End Class
<DataContract>
Public Partial Class MatchCriteria
<DataMember(Name:="retailerGuid")>
Public Overridable Property RetailerGuid As Guid
<DataMember(Name:="timeoutMs")>
Public Overridable Property TimeoutMs As UInt32
<DataMember(Name:="countryIso2s")>
Public Overridable Property CountryIso2s As IEnumerable(Of String)
<DataMember(Name:="maxStalenessMs")>
Public Overridable Property MaxStalenessMs As UInt64
<DataMember(Name:="targetProductCategories")>
Public Overridable Property TargetProductCategories As IEnumerable(Of String)
End Class
<DataContract>
Public Partial Class ProductAttributes
<DataMember(Name:="retailer", EmitDefaultValue:=false)>
Public Overridable Property Retailer As String
<DataMember(Name:="retailerGuid", EmitDefaultValue:=false)>
Public Overridable Property RetailerGuid As Guid
<DataMember(Name:="storefront", EmitDefaultValue:=false)>
Public Overridable Property Storefront As String
<DataMember(Name:="storefrontIso2", EmitDefaultValue:=false)>
Public Overridable Property StorefrontIso2 As String
<DataMember(Name:="storefrontGuid", EmitDefaultValue:=false)>
Public Overridable Property StorefrontGuid As Guid
<DataMember(Name:="category", EmitDefaultValue:=false)>
Public Overridable Property Category As String
<DataMember(Name:="categoryGuid", EmitDefaultValue:=false)>
Public Overridable Property CategoryGuid As Guid
<DataMember(Name:="brand", EmitDefaultValue:=false)>
Public Overridable Property Brand As String
<DataMember(Name:="brandGuid", EmitDefaultValue:=false)>
Public Overridable Property BrandGuid As Guid
<DataMember(Name:="manufacturer", EmitDefaultValue:=false)>
Public Overridable Property Manufacturer As String
<DataMember(Name:="manufacturerGuid", EmitDefaultValue:=false)>
Public Overridable Property ManufacturerGuid As Guid
<DataMember(Name:="identifiers", EmitDefaultValue:=false)>
Public Overridable Property Identifiers As ProductIdentifiers
<DataMember(Name:="itemAttributes", EmitDefaultValue:=false)>
Public Overridable Property ItemAttributes As ItemAttributes
End Class
<DataContract>
Public Partial Class ProductData
<DataMember(Name:="attributes", EmitDefaultValue:=false)>
Public Overridable Property Attributes As ProductAttributes
<DataMember(Name:="retailerSpecificAttributes", EmitDefaultValue:=false)>
Public Overridable Property RetailerSpecificAttributes As RetailerSpecificAttributes
<DataMember(Name:="rawSourceData", EmitDefaultValue:=false)>
Public Overridable Property RawSourceData As String
End Class
<DataContract>
Public Partial Class ProductIdentifiers
<DataMember(Name:="productGuid", EmitDefaultValue:=false)>
Public Overridable Property ProductGuid As Guid
<DataMember(Name:="gtins", EmitDefaultValue:=false)>
Public Overridable Property Gtins As List(Of String)
<DataMember(Name:="mpns", EmitDefaultValue:=false)>
Public Overridable Property Mpns As List(Of String)
<DataMember(Name:="ean8", EmitDefaultValue:=false)>
Public Overridable Property Ean8 As List(Of String)
<DataMember(Name:="ean13", EmitDefaultValue:=false)>
Public Overridable Property Ean13 As List(Of String)
<DataMember(Name:="isbn9", EmitDefaultValue:=false)>
Public Overridable Property Isbn9 As List(Of String)
<DataMember(Name:="isbn10", EmitDefaultValue:=false)>
Public Overridable Property Isbn10 As List(Of String)
<DataMember(Name:="isbn13", EmitDefaultValue:=false)>
Public Overridable Property Isbn13 As List(Of String)
<DataMember(Name:="itf14", EmitDefaultValue:=false)>
Public Overridable Property ITF14 As List(Of String)
<DataMember(Name:="upc12", EmitDefaultValue:=false)>
Public Overridable Property Upc12 As List(Of String)
End Class
<DataContract>
Public Partial Class RetailerSpecificAttributes
<DataMember(Name:="name", EmitDefaultValue:=false)>
Public Overridable Property Name As String
<DataMember(Name:="description", EmitDefaultValue:=false)>
Public Overridable Property Description As String
<DataMember(Name:="skus", EmitDefaultValue:=false)>
Public Overridable Property Skus As List(Of String)
<DataMember(Name:="asin", EmitDefaultValue:=false)>
Public Overridable Property Asin As String
<DataMember(Name:="url", EmitDefaultValue:=false)>
Public Overridable Property Url As Uri
<DataMember(Name:="productImages", EmitDefaultValue:=false)>
Public Overridable Property ProductImages As Dictionary(Of String, Uri)
<DataMember(Name:="additionalData", EmitDefaultValue:=false)>
Public Overridable Property AdditionalData As Dictionary(Of String, String)
End Class
End Namespace
Namespace GeniuslinkAPI.ServiceModel.V4.Products.Requests
Public Partial Class GetProductMatchesByCriteriaRequest
Implements IGetProductMatchesByCriteriaRequest
Public Overridable Property Data As IEnumerable(Of ProductData) Implements IGetProductMatchesByCriteriaRequest.Data
Public Overridable Property MatchCriteria As IEnumerable(Of MatchCriteria) Implements IGetProductMatchesByCriteriaRequest.MatchCriteria
Public Overridable Property MaxTimeoutMs As UInt32 Implements IGetProductMatchesByCriteriaRequest.MaxTimeoutMs
Public Overridable Property SkipCriteriaCheck As Boolean Implements IGetProductMatchesByCriteriaRequest.SkipCriteriaCheck
End Class
End Namespace
End Namespace
VB.NET GetProductMatchesByCriteriaRequest 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 /v3.5/product/search HTTP/1.1
Host: geniuslink-api-zane.dev.platform.georiot.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
maxTimeoutMs: 0,
skipCriteriaCheck: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
maxTimeoutMs: 0,
skipCriteriaCheck: False
}