XOMNI: Experience Omni-Channel

Last Updated: February 19, 2016

This API gives a list of potential search and navigation values within the given search criteria. The values, collection and ranges in the response of a query to the API can be used for further querying of the catalog and create a fluent navigation within the client application.

Request

{
    "DefaultItemId":null,
    "RFID":null,
    "UUID":null,
    "Name":null,
    "SKU":null,
    "CategoryId":66,
    "BrandId":null,
    "Model":null,
    "Title":null,
    "MinWidth":null,
    "MaxWidth":null,
    "MinHeight":null,
    "MaxHeight":null,
    "MinWeight":null,
    "MaxWeight":null,
    "MinDepth":null,
    "MaxDepth":null,
    "MinPrice":null,
    "MaxPrice":null,
    "DimensionTypeId":null,
    "WeightTypeId":null,
    "TagId":null,
    "DelimitedDynamicAttributeValues":null,
    "IncludeOnlyMasterItems":false,
    "TagQuery":null   
}
HTTP Method Resource URI
POST https://{tenantName}.api.xomni.com/catalog/itemsearchoptions

Request Body Description

Parameter Name Description Type Conditions
DefaultItemId The unique ID of the default item in a variation set. Number
RFID The radio frequency ID of the item. String
UUID The universally unique ID of the item. String
Name Name of an item String
SKU SKU(Stock keeping unit) of an item String
CategoryId Category Id of an item Number
BrandId Brand id of an item Number
Model Model of an item String
Title Title of an item String
MinWidth Minimum width criteria. Number
MaxWidth Maximum width criteria. Number
MinHeight Minimum height criteria. Number
MaxHeight Minimum height criteria. Number
MinWeight Minimum depth criteria. Number
MaxWeight Minimum depth criteria. Number
MinDepth Minimum weight criteria. Number
MaxDepth Maximum weight criteria. Number
MinPrice Minimum price criteria. Number
MaxPrice Maximum price criteria. Number
DimensionTypeId Dimension type ID of minimum and maximum weight, height, depth criteria. Number
WeightTypeId Weight type ID of minimum and maximum weight criteria. Number
TagId A particular tag of an item. Number
DelimitedDynamicAttributeValues A list of dynamic fields to query. The query should have a list of TypeID and TypeValueID pairs or TypeID and Value pairs. String
IncludeOnlyMasterItems A Boolean field indicating if the search operation should only cover master items or not. If the field value is “false”, the result set will contain variant items as well. Boolean
TagQuery A string field that filters on tags like a where clause query (e.g: "(TagIds: 1 OR 2 OR 3)"). String
IncludePassiveItems A Boolean field indicating if the search operation will cover passive items or not. If the field value is “false”, the result set will contain active items as well. Boolean

Request Headers

Header Field Name Description
Content-Type
Content type of the response entity. The value of this header is always application/json.
PriceTypeId
Default price type ID when performing price based filtering and sorting.
Sample: MQ==
Accept
Includes minor version header.
Sample: application/vnd.xomni.api-v4-0, */*
Authorization
Access or identity token taken from oauth APIs.
Sample: Bearer dc8f1dcdbe454da8a25621839a93569337522968019e4bd7becd6e01285444da

Response

{
    "Data": {
        "DynamicNavigation": [
            {
                "TypeId": 1,
                "TypeValueId": 1,
                "Value": "Red",
                "TypeName": "Color"
            },
            {
                "TypeId": 2,
                "TypeValueId": 4,
                "Value": "M",
                "TypeName": "Size"
            },
            {
                "TypeId": 2,
                "TypeValueId": 5,
                "Value": "L",
                "TypeName": "Size"
            },
            {
                "TypeId": 2,
                "TypeValueId": 6,
                "Value": "XL",
                "TypeName": "Size"
            },
            {
                "TypeId": 3,
                "TypeValueId": 7,
                "Value": "A",
                "TypeName": "Style"
            },
            {
                "TypeId": 3,
                "TypeValueId": 8,
                "Value": "B",
                "TypeName": "Style"
            },
            {
                "TypeId": 2,
                "TypeValueId": 9,
                "Value": "S",
                "TypeName": "Size"
            }
        ],
        "StaticNavigation": {
            "Categories": [
                {
                    "Id": 66,
                    "Name": "Category 1 Sub 1 Sub 1",
                    "ShortDescription": "Category 1 Sub 1 Sub 1 Short Description",
                    "LongDescription": "Category 1 Sub 1 Sub 1 Long Description",
                    "SubCategoryCount": 0,
                    "ParentCategoryId": 62,
                    "ParentCategoryName": "Category 1 Sub 1"
                },
                {
                    "Id": 67,
                    "Name": "Category 1 Sub 1 Sub 2",
                    "ShortDescription": "Category 1 Sub 1 Sub 1 Short Description",
                    "LongDescription": "Category 1 Sub 1 Sub 1 Long Description",
                    "SubCategoryCount": 0,
                    "ParentCategoryId": 62,
                    "ParentCategoryName": "Category 1 Sub 1"
                }
            ],
            "Brands": [
                {
                    "Id": 1,
                    "Name": "Brand 1"
                },
                {
                    "Id": 2,
                    "Name": "Brand 2"
                }
            ],
            "Tags": [
                {
                    "Id": 2,
                    "Name": "Sample Tag 1",
                    "Description": "3e129d70-2308-4dc5-bd33-c389b92859d2"
                }
            ],
            "Currencies": [
                {
                    "Id": 1,
                    "Description": "USD",
                    "CurrencySymbol": "$"
                },
                {
                    "Id": 2,
                    "Description": "Euro",
                    "CurrencySymbol": "€"
                }
            ],
            "UnitTypes": [
                {
                    "Id": 2,
                    "Name": "250 Kilogram",
                    "Description": "1 Kilogram",
                    "UnitCode": "Kg"
                },
                {
                    "Id": 3,
                    "Name": "Quantity",
                    "Description": "Quantity",
                    "UnitCode": "Quantity"
                }
            ],
            "WidthRanges": [
                {
                    "DimensionTypeId": 1,
                    "DimensionTypeDescription": "Meter",
                    "Min": 11,
                    "Max": 11
                },
                {
                    "DimensionTypeId": 2,
                    "DimensionTypeDescription": "Inch",
                    "Min": 5,
                    "Max": 5
                }
            ],
            "HeightRanges": [
                {
                    "DimensionTypeId": 1,
                    "DimensionTypeDescription": "Meter",
                    "Min": 11,
                    "Max": 11
                },
                {
                    "DimensionTypeId": 2,
                    "DimensionTypeDescription": "Inch",
                    "Min": 5,
                    "Max": 5
                }
            ],
            "DepthRanges": [
                {
                    "DimensionTypeId": 1,
                    "DimensionTypeDescription": "Meter",
                    "Min": 11,
                    "Max": 11
                },
                {
                    "DimensionTypeId": 2,
                    "DimensionTypeDescription": "Inch",
                    "Min": 5,
                    "Max": 5
                }
            ],
            "WeightRanges": [],
            "PriceRanges": [
                {
                    "CurrencyId": 1,
                    "CurrencySymbol": "$",
                    "Min": 10.55,
                    "Max": 8888
                }
            ],
            "DiscountPriceRanges": [
                {
                    "CurrencyId": 1,
                    "CurrencySymbol": "$",
                    "Min": 50,
                    "Max": 888
                }
            ]
        }
    }
}

Response Body Description

Parameter Name Description Type
StaticNavigation.DiscountPriceRanges[0..N].PriceTypeId This is the unique ID for the price type. Number
StaticNavigation.DiscountPriceRanges[0..N].PriceTypeSymbol Symbol of the price type. String
StaticNavigation.DiscountPriceRanges[0..N].Min Minimum price value. Number
StaticNavigation.DiscountPriceRanges[0..N].Max Maximum price value. Number
StaticNavigation.PriceRanges[0..N].PriceTypeId This is the unique ID for the price type. Number
StaticNavigation.PriceRanges[0..N].PriceTypeSymbol Symbol of the price type. String
StaticNavigation.PriceRanges[0..N].Min Minimum price value. Number
StaticNavigation.PriceRanges[0..N].Max Maximum price value. Number
StaticNavigation.WeightRanges[0..N].WeightTypeId The unique ID of the weight type to define the weight. Number
StaticNavigation.WeightRanges[0..N].WeightTypeDescription The description of the weight type to define the weight. String
StaticNavigation.WeightRanges[0..N].Min Minimum weight value. Number
StaticNavigation.WeightRanges[0..N].Max Maximum weight value. Number
StaticNavigation.DepthRanges[0..N].DimensionTypeId The unique id of the dimension type to define the dimension Number
StaticNavigation.DepthRanges[0..N].DimensionTypeDescription The description of the dimension type to define the dimension String
StaticNavigation.DepthRanges[0..N].Min The width value of the item. Number
StaticNavigation.DepthRanges[0..N].Max The hight value of the item. Number
StaticNavigation.HeightRanges[0..N].DimensionTypeId The unique id of the dimension type to define the dimension Number
StaticNavigation.HeightRanges[0..N].DimensionTypeDescription The description of the dimension type to define the dimension String
StaticNavigation.HeightRanges[0..N].Min The width value of the item. Number
StaticNavigation.HeightRanges[0..N].Max The hight value of the item. Number
StaticNavigation.WidthRanges[0..N].DimensionTypeId The unique id of the dimension type to define the dimension Number
StaticNavigation.WidthRanges[0..N].DimensionTypeDescription The description of the dimension type to define the dimension String
StaticNavigation.WidthRanges[0..N].Min The width value of the item. Number
StaticNavigation.WidthRanges[0..N].Max The hight value of the item. Number
StaticNavigation.UnitTypes[0..N].Id This is the unique ID for a unit type. Number
StaticNavigation.UnitTypes[0..N].Name Name of the unit type. String
StaticNavigation.UnitTypes[0..N].Description Description of the unit type. String
StaticNavigation.UnitTypes[0..N].UnitCode Unit code of the unit type. (For example, kg for kilogram) String
StaticNavigation.Currencies[0..N].Id This is the unique ID for the currency. Number
StaticNavigation.Currencies[0..N].Description Description of the currency. String
StaticNavigation.Currencies[0..N].CurrencySymbol Currency symbol of the currency String
StaticNavigation.Tags[0..N].Id The unique ID of the tag. Number
StaticNavigation.Tags[0..N].Name The name of the tag. String
StaticNavigation.Tags[0..N].Description The description of the tag. String
StaticNavigation.Tags[0..N].TagMetadata[0..N].Key The key for the metadata. String
StaticNavigation.Tags[0..N].TagMetadata[0..N].Value The value of the metadata. String
StaticNavigation.Brands[0..N].Id The unique ID of the brand. Number
StaticNavigation.Brands[0..N].Name The name of the brand. String
StaticNavigation.Categories[0..N].Id This is the unique ID for the category. Number
StaticNavigation.Categories[0..N].Name The name of the category. String
StaticNavigation.Categories[0..N].ShortDescription The short description of the category. String
StaticNavigation.Categories[0..N].LongDescription The long description of the category. String
StaticNavigation.Categories[0..N].SubCategoryCount The count of subcategories of this category. Number
StaticNavigation.Categories[0..N].ParentCategoryId The unique id of the parent category of the current category Number
StaticNavigation.Categories[0..N].ParentCategoryName The name of the parent category of the current category String
StaticNavigation.Categories[0..N].CategoryMetadata[0..N].Key The key for the metadata. String
StaticNavigation.Categories[0..N].CategoryMetadata[0..N].Value The value of the metadata. String
DynamicNavigation[0..N].TypeId Unique ID of a dynamic field. Number
DynamicNavigation[0..N].TypeValueId Unique ID of a dynamic field value. Number
DynamicNavigation[0..N].Value Value of a dynamic field. String
DynamicNavigation[0..N].TypeName Unique name of a dynamic field. String

Response Headers

Header Field Name Description
Content-Type
Content type of the response entity. The value of this header is always application/json.

Status Codes

A successful operation returns status code 200 (OK) for POST operations. Possible response status codes are as listed below:

Status Code Description
400 (Bad Request) Currency ID is missing in request headers (required when performing price range filtering).
400 (Bad Request) WeightType ID is missing inside the request body (required when performing weight range filtering).
400 (Bad Request) DimensionTypeId is missing inside the request body (required when performing dimensions range filtering).