Support and Docs

3 Topics
Last post 11 November 2014 By Nadja Kristiansen
1 Topics
Last post 20 March 2014 By Carsten E. Madsen
0 Topics
Last post N/A By N/A
0 Topics
Last post N/A By N/A
1 Topics
Last post 02 April 2014 By Carsten E. Madsen

JSON product list

  • 11/06/2014

The JSON product list service gives you endless possibilities of displaying your products in any way you wish – with no constraints to design or functionality. The JSON product list also enables you to create multiple product lists and place them anywhere in the shop.

The JSON product list service produces a JSON formatted list of products. By making a call to the service, a JSON object is returned containing products and virtually all associated data. This means that you are able to display any information available about the products directly in the product list – for instance product name, product number, sales price(s), manufacturer, gross weight or expected delivery date. In the Fields section you see a full list of available product data when using the JSON product list service.

The product lists are cacheable, both server side, on a CDN and in the local browser cache which means that performance is excellent even for large product lists. JSON product lists may thus display stale date for at least 30 minutes after an update. It should be noted however that the adding a deleted product or a product with a stale price to the basket will result in correct prices in the basket.

Contents

Why JSON?

To the top

JSON (JavaScript Object Notation) is a lightweight human-readable syntax for storing and exchanging data. The JSON format is syntactically identical to the code for creating JavaScript object and hence can be parsed using standard JavaScript functions (or for instance jQuery) - however JSON is language independent and thus can be used with most of the modern programming languages.

JSON is hierarchical (values within values) and data consists of name/value pairs. JSON uses objects and arrays as data structures and numbers, strings, Booleans, and null as values.

Below is a simple example of the JSON syntax. Note that this example does not reflect the actual structure of data returned by the eSeller Cloud JSON product list service.

JSON example

{
“productID” : “KL2432”,
“productName” : “Hugo Boss men’s suit”,
“productPrice” :  2500, 
“productPriceFormatted” : “DKK 2.500,00” 
“inStock” : true, 
“relatedProducts”: [
      {“productID”: “KL2532”},
      {“productID”: “KL2341”}
]
}

Further information

Learn more about the JSON format here.

Services

To the top

The services accept HTTP GET requests. Note that some versions of Internet Explorer enforce a maximum request length of 2kb.

The currently available services are:

  • www.esellercloud.com/Services/ProductService.asmx/ProductList?v=VERSIONNUMBER
  • www.esellercloud.com/Services/ProductService.asmx/Products?v=VERSIONNUMBER
  • www.esellercloud.com/Services/ProductService.asmx/ProductVariants?v=VERSIONNUMBER
  • www.esellercloud.com/Services/ProductService.asmx/RelatedProducts?v=VERSIONNUMBER
  • Where VERSIONNUMBER is the desired format version number. Currently only one version number exists:

    www.esellercloud.com/Services/ProductService.asmx/ProductList?v=1.0

    A request to the JSON product service can be tailored to suit your needs by using the available parameters accordingly. Below is an overview of the parameters that the request consists of grouped by service.

    Response

    Headers

    The response will have the following headers:
    - Pragma: public
    - Max-age: 21600
    Cookies will never be set in the response

    Data

    Data will be formatted according to https://google-styleguide.googlecode.com/svn/trunk/jsoncstyleguide.xml. The response will contain EITHER a data container OR an errors container but never both. The response may contain up to 1000 products. Products will be sorted according to sort order or the sorting directive given in the request (so parameter). Salesprices will be sorted by quantity ascending.

    Service: ProductList

    To the top

    The "ProductList" service is generally used for retrieving products for the main product lists (e.g. lists of products in menus) or as the search result list. Only products that have at least one menu relation will be included in JSON results.

    The table below displays all available parameters for the "ProductList" service. The service is located at www.esellercloud.com/Services/ProductService.asmx/ProductList?

    Parameter Name Description Example
    v Version number Version number v=1.0
    context String Is defined by the client and is echoed by the server in the JSON result. Can be used to correlate responses with requests - especially useful in situations where batches of requests are made. frontPageProducts
    fn1 … fn(n)
    fv1 … fv(n)
    fk1 … fk(n)
    fn=Filter type
    fv=Filter value
    fk= Custom field ext ID
    URL encoded string. You are able to specify multiple filters in one request. Filter types include: CustomFields, ProductVariants, ProductPrice, ProductManufacturer and ProductInStock. Note that ProductVariants and ProductManufacturer values must be set with the internal IDs of the values. For ProductPrice and CustomFields filters it is possible to specify ranges rather than fixed values. Using ranges presupposes that the custom field has the type Decimal or Integer and the range operator is tilde ("~"). Note that when using ranges, both range limits are included. For decimal range limits, a dot (".") must be used as the decimal mark - this means that decimal custom field values must also use dot (".") as the decimal mark. fn1=CustomFields&fv1=Cotton&fk1=Material
    fn1=CustomFields&fk1=Length&fv1=100~250
    fn1=ProductVariants&fv1=443^441
    fn1=ProductPrice&fv1=150~300
    fn1=ProductManufacturer&fv1=5686
    fn1=ProductInStock&fv1=true
    so Product list sorting None = 0,
    Product number ascending = 1,
    Product number descending = 2,
    Name ascending = 3,
    Name descending = 4,
    Price ascending = 5,
    Price descending = 6,
    Product card = 7
    so=5
    cId Currency ID Integer (the internal ID of an active currency) cId=232
    langId Language ID Integer (the internal ID of an active language) langId=2
    countryId Country ID Integer (the internal ID of an active country) countryId=23
    locId Location ID Integer (the internal ID of an active location or empty if location is not used) locId=735
    customerId Authorization token String identifying authorization for the request. The value is created by the server, and can be retrieved by <eSeller:Select value-of=”context: AuthToken” /> or <eSeller:Select value-of=”context: AuthTokenUrlEncoded” />, which is url encoded and can be used directly in a url. customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==
    p Page number Integer >=1 – the number of the page being requested p=1
    rp Results per page Integer < 1000. The desired number of results per page rp=25
    mId Menu ID Integer (the internal ID of the menu to display) mId=123322
    imgSizeId Image Size ID Integer – specifies the product image size for the product list (the Internal ID of an image size) imgSizeId=4363
    search Search query Performs a search using the SMART search feature, delivering the result as JSON. Note that if "mId" is specified, the search result will be limited to a specific menu. If "so" is specified (and is not 0), the search results will be sorted by the specified order (as oppose to being sorted by score). If "so" is not specified, the result will be sorted by score. search=polo%20shirt
    maxSearchResults Maximum number of search results returned. Limits the number of search results returned by the service. If the parameter is not specified, the maximum number of search results defaults to what is specified in shop settings ("SearchProductsMaxResults"). maxSearchResults=100
    pcEId Product collection ext. ID Returns products for the specified product collection pcEId=saleProducts
    pcTag Product collection tag Returns products for all product collections qualified by the tag pcTag=sale
    include Comma-separated list of properties to include in the JSON result (that are otherwise omitted) Possible values are:
    shortDesc: Short description
    longDesc: Long description
    shortDescRecurse: Includes short description from products in nested products (e.g. bill of materials). Adds JSON property “shortDesc” in nested product listings.
    longDescRecurse: Includes long description from products in nested products (e.g. bill of materials). Adds JSON property “longDesc” in nested product listings.
    NOTE: Due to the potentially huge amount of data we advise that short and long description are only included where necessary!
    bom: Expands bill of materials specification - adds JSON property "bomSpec" containing a list of all products in the bill of materials.
    variantDimensionMap: adds JSON property "variantDimensionMap" to the data segment of the JSON result (also for nested product listings). Contains a mapping of all variant dimensions and variant dimension values for all variants in the result set.
    include=shortDesc,longDesc

    Example requests

    Get all products from a specific menu

    /Services/ProductService.asmx/ProductList?v=1.0&so=1&cId=54&langId=1&countryId=11&locId=&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&mId=6692&p=1&rp=25&imgSizeId=0
    - Get all products from the product menu with menu ID 6692

    Set multiple filters in one request

    /Services/ProductService.asmx/ProductList?v=1.0&so=1&cId=54&langId=1&countryId=11&locId=&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&mId=1302&p=1&rp=5&imgSizeId=0&fn1=ProductVariants&fv1=443^441^445&fn2=ProductPrice&fv2=1500~7000&fn3=CustomFields&fv3=Cotton&fk3=Material
    - In this request a product variant filter is set to filter on the variant values with ID 443, 443 and 445 (note that “^” means “and”. Moreover, a price filter is set to all products with a price between 1500 and 7000 (note that "~" is used to specify a price range). Lastly, a filter is set to only show products that have the custom field “Material” with the custom field value “Cotton”.

    Set range filters

    /Services/ProductService.asmx/ProductList?v=1.0&so=1&cId=54&langId=1&countryId=11&locId=&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&mId=1302&p=1&rp=25&imgSizeId=0&fn1=CustomFields&fk1=Length&fv1=125~658&fn2=CustomFields&fk2=Height&fv2=68.5~105.5
    - In this request two custom field range filters are set; Length between 125 and 658 (both inclusive) and Height between 68.5 and 105.5 (both inclusive). Note that decimal values must use "." as decimal mark.

    Perform a SMART search query

    /Services/ProductService.asmx/ProductList?v=1.0&cId=54&langId=1&countryId=11&locId=&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&p=1&rp=25&imgSizeId=0&maxSearchResults=100&search=ralph%20lauren%20polo
    - Performs a SMART search of the query "ralph lauren polo" and returns the result as JSON (BETA).

    Perform a SMART search query for a specific location

    /Services/ProductService.asmx/ProductList?v=1.0&cId=54&langId=1&countryId=11&locId=1422&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&p=1&rp=25&imgSizeId=0&maxSearchResults=100&search=coca%20cola
    - Performs a SMART search of the query "coca cola" for the location with ID 1422 and returns the result as JSON (BETA).

    Gets a list of products from a specific product collection

    /Services/ProductService.asmx/ProductList?v=1.0&cId=54&langId=1&countryId=11&locId=1422&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&p=1&rp=25&imgSizeId=0&pcEId=summer2016
    - Gets all products from the product collection with ext. ID "summer2016".

    Gets a list of products based on a product collection tag

    /Services/ProductService.asmx/ProductList?v=1.0&cId=54&langId=1&countryId=11&locId=1422&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&p=1&rp=25&imgSizeId=0&pcTag=bargains
    - Gets all products from all product collections with the tag "bargains".

    Response

    Below you see all fields provided in the JSON response

    Field Description Example
    apiVersion String – API version number – similar to VERSIONNUMBER in path 1.0
    id Integer – a unique number that allows a request to be tied to a log entry. All log entries related to JSON services MUST contain the id 12345
    context String - Echoes the context sent by the client frontPageProducts
    servedBy Name of the active server. Used for testing purposes - identifying which server is serving the content. "servedBy": "ESLWEB305"
    data Object – Object containing data  
    kind String – Specifies the object type. In the data object the kind will be products (in plural) Products
    updated Datetime of when a fresh (non-cached) version of the response was retrieved from the server 2015-10-02T13:13:53.1388591+00:00
    lang String- BCP 47 formatted language specification. Lang will always reflect the requested language En
    currentItemCount Number of entries in the current response. Is always equal to or lower than productPerPage 13
    productPerPage Number of product per response 25
    startPageNumber Index of the first page 1
    totalProducts Total number of results 521
    pageNumber Current response pageindex 2
    totalPages Total number of pages (totalProducts/ productPerPage) (round up) 21
    nextLink Link to next result-set. Empty for ultimate page /Services/ProductService.asmx/ProductList?v=1.0&lId=0&fn1=ProductManufacturer&fv1=&fn2=ProductPrice&fv2=289%5e15099&so=7&cId=54&langId=1&countryId=11&locId=&customerId=0&mId=21584&p=2&rp=50&imgSizeId=0
    previousLink Link to previous result-set. Empty for first page /Services/ProductService.asmx/ProductList?v=1.0&lId=0&fn1=ProductManufacturer&fv1=&fn2=ProductPrice&fv2=289%5e15099&so=7&cId=54&langId=1&countryId=11&locId=&customerId=0&mId=21584&p=1&rp=50&imgSizeId=0
    productMenus Array of product menu objects
    navigateUrl Relative URL of the product menu /pl/Tools_21456.aspx
    navigateText Link text Tools
    navigateTarget Target property (always _self for product menus) _self
    extMenuItemID Ext. Menu ID ToolsMenu
    sorting Sorting 10
    description Menu description We carry a large array of great quality tools.
    alternateDescription Menu alternate description We carry a large array of great quality tools.
    image URL of the product menu image http://www.myshop.com/Services/ImageHandler.ashx?imgId=62973&sizeId=4129"
    articles Array of article objects (CMS/info menus). Note that articles that function as links (redirect to other pages) do not appear in the search result.
    navigateUrl Relative URL of the article /info/CustomerService_124353.aspx
    navigateText Link text Customer service
    navigateTarget Target property (always _self for product menus) _self
    sorting Sorting 10
    description Article description We provide great customer service.
    items Array of Product objects  
    extVariantId The external variant ID - otherwise null 112455 or null
    eSellerId The internal eSeller cloud product ID 243534
    id The product id 242P233
    name Product name Ball bearings
    variantId If 0, the product is not a variant - otherwise this is the variant ID 213344
    variantValues An ordered array of variant values - otherwise null "Red", "40", "Cotton" or null
    showProductId Determines if the if the eSeller Cloud internal product ID should be shown True
    showProductEAN Determines if the product EAN should be shown True
    showProductManufacturereSKU Determines if the product manufacturer SKU should be shown True
    showExtProductId Determines if the external product ID should be shown True
    showAltExtProductID Determines if the alternate product ID should be shown True
    hasVariants Specifies whether a product has variants. Implies that the current product is a variant master True
    isVariant Determines if a product is a subvariant True
    hasSalesPrice Specifies whether the product has one or more sales prices True
    showSalesPrice Specities whether the sales price should be displayed True
    manufacturerSKU String representing the manufacturer SKU HBP54221
    hasExpectedDeliveryDate Specifies whether an expected delivery date is set on the product False
    expectedDeliveryDate Date representing when a product will be in stock again 2014-07-05T00:00:00
    expectedDeliveryDateFormatted Formatted date representing when a product will be in stock again 05-07-2014
    shipmentType Integer specifying the available shipment type.
    0 = shipping & collect at store
    1 = only collect at store
    2 = only shipping
    3 = virtual
    0
    isBuyable Determines if a product can be bought and hence if the “add to basket” button should be shown True
    showAddToBasket Specifies whether the “add to basket” button should be shown True
    showAddToFavorites Determines if the “add to favorites” button should be shown False
    addToFavoritesUrl The URL for adding the product to the favorites list /baction/atf.aspx?pid=1210839&rurl=%2fServices%2fProductService.asmx%2fProductList%3fv%3d1.0%26so%3d3%26cId%3d54%26langId%3d1%26countryId%3d11%26locId%3d14922%26customerId%3d0%26mId%3d40620%26p%3d1%26rp%3d60%26serial%3d07c18a00a9584881a42827364195adf4
    boundToInventoryCount Determines if a product can be sold if the inventory count is equal to or less than zero False
    inventoryCount Integer - The number of products in the inventory 23
    inventoryCountFormatted A formatted string representing the number of products in the inventory “23”
    grossWeight The product gross weight in grams 12.000
    grossWeightFormatted A formatted string representing the product gross weight in grams “12,000”
    stockStatusText A text describing the stock status of the product  
    inStockMessage A text to display if the product is in stock In stock – ships in 2-3 business days
    notInStockMessage A text to display if the product is not in stock Not in stock – ships in 8-10 business days
    bundleSize The number of products that can be sold separately 1
    smallestSalesUnit The minimum number of products that can be sold 1
    secondaryId The secondary product ID 12312abc
    posId Product ID in any POS system 500012487
    EAN Product EAN 126749812548
    unitOfMeasure The unit of measure related measuring the amount of products (barrels, containers, pallets) Pair
    unitOfMeasureDesc A string describing the unit of measure Pair (2 pieces)
    manufacturer Name of the product manufacturer Hugo Boss
    linkURL The product link URL /pi/Pants_113105_6692.aspx
    linkName The text related to the product link Hugo Boss pants
    vendor String representing the product vendor HUGO BOSS STORE
    URLPathAndQuery URL to the product detail page /pi/Pants_113105_6692.aspx
    items:salesPrices An array containing objects specifying sales prices for the product  
    quantity The number of products needed to obtain the tag price 2
    quantityFormatted The formatted string representing the number of products needed to obtain the tag price “2”
    salesUnit The unit of measure 3
    hasBetterPrice Specifies whether a better (lower) price exists – e.g. if a sales price with a quantity of 10 gives a lower price than the sales price with a quantity of 1 False
    tagPrice The price associated with the current quantity 125.00 OR Empty string (“”)
    tagPriceFormatted The formatted string representing the price associated with the current quantity “DKK 125,00” OR Empty string (“”)
    tagPriceVATAmount The part of the tag price which is taken up by VAT 25.00 OR Empty string (“”)
    tagPriceVATAmountFormatted The formatted string representing the part of the tag price which is taken up by VAT “DKK 25,00” OR Empty string (“”)
    tagPriceExcVATAmountFormatted The formatted string representing the part of the tag price which is not VAT “DKK 100,00” OR Empty string (“”)
    tagPriceExcVATAmount The part of the tag price which is not VAT 100.00 OR Empty string (“”)
    tagPriceIncVATAmountFormatted The formatted string representing the tag price including VAT “DKK 125,00”
    tagPriceIncVATAmount The tag price including VAT 125.00 OR Empty string (“”)
    totalTagPrice Tag price multiplied with quantity 200.00 OR Empty string (“”)
    totalTagPriceFormatted Formatted string representing tag price multiplied with quantity “DKK 200,00”
    totalTagPriceVATAmount The amount of the total tag price that is VAT 40.00 OR Empty string (“”)
    totalTagPriceVATAmountFormatted A formatted string representing the amount of the total tag price that is VAT “DKK 40,00” OR empty string (“”)
    totalTagPriceExcVATAmountFormatted A formatted string representing the total tag price excluding VAT “DKK 160,00”
    totalTagPriceExcVATAmount The total tag price excluding VAT 160.00
    totalTagPriceIncVATAmountFormatted A formatted string representing the total tag price including VAT “DKK 200,00”
    totalTagPriceExcVATAmount The total tag price including VAT 200.00
    hasPreviousPrice Specifies whether a previous tag price is provided True
    previousTagPriceFormatted The formatted string representing the previous tag price “DKK 300,00” OR Empty string (“”)
    previousTagPrice The previous tag price 300.00 OR Empty string (“”)
    hasRecommendedPrice Specifies whether a list tag price is provided True
    listTagPrice The product list price 400.00 OR Empty string (“”)
    listTagPriceFormatted The formatted string representing the product list price “DKK 400,00” OR Empty string (“”)
    lineDiscountPercentage The discount percentage associated with the product 10 OR Empty string (“”)
    lineDiscountPercentageFormatted The formatted string representing the discount percentage associated with the product “10” OR Empty string (“”)
    tagPriceLineDiscountAmount The amount in the requested currency corresponding to the discount percentage 20 OR Empty string (“”)
    tagPriceLineDiscountAmountFormatted The formatted string representing the amount in the requested currency corresponding to the discount percentage “DKK 20,00” OR Empty string (“”)
    description A description of the sales price “Get 3 – pay for 2!”
    items:images An array of images  
    url URL to product images /Services/ImageHandler.ashx?imgId=120834&sizeId=4363 OR Empty string (“”)
    frontPageProduct Determines if a product is shown on the frontpage True
    greatBuy Determines if a great buy splash is to be shown on the product True
    noveltyProduct Determines if a noveltyproduct splash is to be shown on the product False
    deprecated Determines if a product is deprecated. Deprecated products should not be buyable True
    kind String – Specifies the object type. Product
    items:customFields An array containing all custom fields and custom field values  
    costumFieldName String representing the value of customFieldName. Note that custumFieldName will be substituted with the name of the custom field (eg. “Product:customFields:colorCode”) Black
    isGiftCard Boolean - True if the product is a gift card product False
    productRelatedLink The related link of the product (e.g. a page with additional product information at the manufacturer website) http://www.esellercloud.com
    productRelatedLinkText The text used to describe the related link See a detailed specification at the manufacturer website
    suggestedQuantity The suggested quantity of a product in a product collection. For all calls not using the "pcEId" or "pcTag" parameters, the value will be null. 3

    Service: Products

    To the top

    Using the "Products" service you are able to generate lists containing specific products. Using the "pIds" parameter you are able to specify which products you want to be retrieved in the JSON result.

    The table below displays all available parameters for the "Products" service. The service is located at www.esellercloud.com/Services/ProductService.asmx/Products?

    Parameter Name Description Example
    v Version number Version number v=1.0
    context String Is defined by the client and is echoed by the server in the JSON result. Can be used to correlate responses with requests - especially useful in situations where batches of requests are made. frontPageProducts
    cId Currency ID Integer (the internal ID of an active currency) cId=232
    langId Language ID Integer (the internal ID of an active language) langId=2
    countryId Country ID Integer (the internal ID of an active country) countryId=23
    locId Location ID Integer (the internal ID of an active location or empty if location is not used) locId=735
    customerId Authorization token String identifying authorization for the request. The value is created by the server, and can be retrieved by <eSeller:Select value-of=”context: AuthToken” /> or <eSeller:Select value-of=”context: AuthTokenUrlEncoded” />, which is url encoded and can be used directly in a url. customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==
    pId Product ID Integer – specifies the item number of a product (eSeller Cloud item number) pId=1218427
    pIds Multiple Product IDs List of product IDs – specifies the item numbers of multiple products seperated by semicolons (eSeller Cloud item numbers) pIds=113386;113385;113384
    pEId Product external ID String – specifies the external item number of a product pEId=A565E12
    pEIds Multiple Product external IDs List of ext. product IDs – specifies the ext. IDs of multiple products seperated by semicolons pEIds=AL6512;AL5548;AL6533
    pLId Product lifetime ID String – specifies the litetime ID of a product pLId=A565E12
    pLIds Multiple Product lifetime IDs List of product lifetime IDs – specifies the lifetime IDs of multiple products seperated by semicolons pLIds=A565E12
    imgSizeId Image Size ID Integer – specifies the product image size for the product list (the Internal ID of an image size) imgSizeId=4363
    include Comma-separated list of properties to include in the JSON result (that are otherwise omitted) Possible values are:
    shortDesc: Short description
    longDesc: Long description
    shortDescRecurse: Includes short description from products in nested products (e.g. bill of materials). Adds JSON property “shortDesc” in nested product listings.
    longDescRecurse: Includes long description from products in nested products (e.g. bill of materials). Adds JSON property “longDesc” in nested product listings.
    NOTE: Due to the potentially huge amount of data we advise that short and long description are only included where necessary!
    bom: Expands bill of materials specification - adds JSON property "bomSpec" containing a list of all products in the bill of materials.
    include=shortDesc,longDesc

    Example requests

    Get a list of specified products

    /Services/ProductService.asmx/Products?v=1.0&cId=54&langId=1&countryId=11&locId=&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&imgSizeId=0&pIds=113386;113387
    - Gets a list that contains the products with ID 113386 and 113387. Semicolon divides the product IDs.

    Response

    Below you see all fields provided in the JSON response

    Field Description Example
    apiVersion String – API version number – similar to VERSIONNUMBER in path 1.0
    id Integer – a unique number that allows a request to be tied to a log entry. All log entries related to JSON services MUST contain the id 12345
    context String - Echoes the context sent by the client frontPageProducts
    servedBy Name of the active server. Used for testing purposes - identifying which server is serving the content. "servedBy": "ESLWEB305"
    data Object – Object containing data  
    kind String – Specifies the object type. In the data object the kind will be products (in plural) Products
    updated Datetime of when a fresh (non-cached) version of the response was retrieved from the server 2015-10-02T13:13:53.1388591+00:00
    lang String- BCP 47 formatted language specification. Lang will always reflect the requested language En
    totalProducts Total number of results 521
    items Array of Product objects  
    extVariantId The external variant ID - otherwise null 112455 or null
    eSellerId The internal eSeller cloud product ID 243534
    id The product id 242P233
    name Product name Ball bearings
    variantId If 0, the product is not a variant - otherwise this is the variant ID 213344
    variantValues An ordered array of variant values - otherwise null "Red", "40", "Cotton" or null
    showProductId Determines if the if the eSeller Cloud internal product ID should be shown True
    showProductEAN Determines if the product EAN should be shown True
    showProductManufacturereSKU Determines if the product manufacturer SKU should be shown True
    showExtProductId Determines if the external product ID should be shown True
    showAltExtProductID Determines if the alternate product ID should be shown True
    hasVariants Specifies whether a product has variants. Implies that the current product is a variant master True
    isVariant Determines if a product is a subvariant True
    hasSalesPrice Specifies whether the product has one or more sales prices True
    showSalesPrice Specities whether the sales price should be displayed True
    manufacturerSKU String representing the manufacturer SKU HBP54221
    hasExpectedDeliveryDate Specifies whether an expected delivery date is set on the product False
    expectedDeliveryDate Date representing when a product will be in stock again 2014-07-05T00:00:00
    expectedDeliveryDateFormatted Formatted date representing when a product will be in stock again 05-07-2014
    shipmentType Integer specifying the available shipment type.
    0 = shipping & collect at store
    1 = only collect at store
    2 = only shipping
    3 = virtual
    0
    isBuyable Determines if a product can be bought and hence if the “add to basket” button should be shown True
    showAddToBasket Specifies whether the “add to basket” button should be shown True
    showAddToFavorites Determines if the “add to favorites” button should be shown False
    addToFavoritesUrl The URL for adding the product to the favorites list /baction/atf.aspx?pid=1210839&rurl=%2fServices%2fProductService.asmx%2fProductList%3fv%3d1.0%26so%3d3%26cId%3d54%26langId%3d1%26countryId%3d11%26locId%3d14922%26customerId%3d0%26mId%3d40620%26p%3d1%26rp%3d60%26serial%3d07c18a00a9584881a42827364195adf4
    boundToInventoryCount Determines if a product can be sold if the inventory count is equal to or less than zero False
    inventoryCount Integer - The number of products in the inventory 23
    inventoryCountFormatted A formatted string representing the number of products in the inventory “23”
    grossWeight The product gross weight in grams 12.000
    grossWeightFormatted A formatted string representing the product gross weight in grams “12,000”
    stockStatusText A text describing the stock status of the product  
    inStockMessage A text to display if the product is in stock In stock – ships in 2-3 business days
    notInStockMessage A text to display if the product is not in stock Not in stock – ships in 8-10 business days
    bundleSize The number of products that can be sold separately 1
    smallestSalesUnit The minimum number of products that can be sold 1
    secondaryId The secondary product ID 12312abc
    posId Product ID in any POS system 500012487
    EAN Product EAN 126749812548
    unitOfMeasure The unit of measure related measuring the amount of products (barrels, containers, pallets) Pair
    unitOfMeasureDesc A string describing the unit of measure Pair (2 pieces)
    manufacturer Name of the product manufacturer Hugo Boss
    linkURL The product link URL /pi/Pants_113105_6692.aspx
    linkName The text related to the product link Hugo Boss pants
    vendor String representing the product vendor HUGO BOSS STORE
    URLPathAndQuery URL to the product detail page /pi/Pants_113105_6692.aspx
    items:salesPrices An array containing objects specifying sales prices for the product  
    quantity The number of products needed to obtain the tag price 2
    quantityFormatted The formatted string representing the number of products needed to obtain the tag price “2”
    salesUnit The unit of measure 3
    hasBetterPrice Specifies whether a better (lower) price exists – e.g. if a sales price with a quantity of 10 gives a lower price than the sales price with a quantity of 1 False
    tagPrice The price associated with the current quantity 125.00 OR Empty string (“”)
    tagPriceFormatted The formatted string representing the price associated with the current quantity “DKK 125,00” OR Empty string (“”)
    tagPriceVATAmount The part of the tag price which is taken up by VAT 25.00 OR Empty string (“”)
    tagPriceVATAmountFormatted The formatted string representing the part of the tag price which is taken up by VAT “DKK 25,00” OR Empty string (“”)
    tagPriceExcVATAmountFormatted The formatted string representing the part of the tag price which is not VAT “DKK 100,00” OR Empty string (“”)
    tagPriceExcVATAmount The part of the tag price which is not VAT 100.00 OR Empty string (“”)
    tagPriceIncVATAmountFormatted The formatted string representing the tag price including VAT “DKK 125,00”
    tagPriceIncVATAmount The tag price including VAT 125.00 OR Empty string (“”)
    totalTagPrice Tag price multiplied with quantity 200.00 OR Empty string (“”)
    totalTagPriceFormatted Formatted string representing tag price multiplied with quantity “DKK 200,00”
    totalTagPriceVATAmount The amount of the total tag price that is VAT 40.00 OR Empty string (“”)
    totalTagPriceVATAmountFormatted A formatted string representing the amount of the total tag price that is VAT “DKK 40,00” OR empty string (“”)
    totalTagPriceExcVATAmountFormatted A formatted string representing the total tag price excluding VAT “DKK 160,00”
    totalTagPriceExcVATAmount The total tag price excluding VAT 160.00
    totalTagPriceIncVATAmountFormatted A formatted string representing the total tag price including VAT “DKK 200,00”
    totalTagPriceExcVATAmount The total tag price including VAT 200.00
    hasPreviousPrice Specifies whether a previous tag price is provided True
    previousTagPriceFormatted The formatted string representing the previous tag price “DKK 300,00” OR Empty string (“”)
    previousTagPrice The previous tag price 300.00 OR Empty string (“”)
    hasRecommendedPrice Specifies whether a list tag price is provided True
    listTagPrice The product list price 400.00 OR Empty string (“”)
    listTagPriceFormatted The formatted string representing the product list price “DKK 400,00” OR Empty string (“”)
    lineDiscountPercentage The discount percentage associated with the product 10 OR Empty string (“”)
    lineDiscountPercentageFormatted The formatted string representing the discount percentage associated with the product “10” OR Empty string (“”)
    tagPriceLineDiscountAmount The amount in the requested currency corresponding to the discount percentage 20 OR Empty string (“”)
    tagPriceLineDiscountAmountFormatted The formatted string representing the amount in the requested currency corresponding to the discount percentage “DKK 20,00” OR Empty string (“”)
    description A description of the sales price “Get 3 – pay for 2!”
    items:images An array of images  
    url URL to product images /Services/ImageHandler.ashx?imgId=120834&sizeId=4363 OR Empty string (“”)
    frontPageProduct Determines if a product is shown on the frontpage True
    greatBuy Determines if a great buy splash is to be shown on the product True
    noveltyProduct Determines if a noveltyproduct splash is to be shown on the product False
    deprecated Determines if a product is deprecated. Deprecated products should not be buyable True
    kind String – Specifies the object type. Product
    items:customFields An array containing all custom fields and custom field values  
    costumFieldName String representing the value of customFieldName. Note that custumFieldName will be substituted with the name of the custom field (eg. “Product:customFields:colorCode”) Black
    isGiftCard Boolean - True if the product is a gift card product False
    productRelatedLink The related link of the product (e.g. a page with additional product information at the manufacturer website) http://www.esellercloud.com
    productRelatedLinkText The text used to describe the related link See a detailed specification at the manufacturer website
    suggestedQuantity The suggested quantity of a product in a product collection. For all calls not using the "pcEId" or "pcTag" parameters, the value will be null. 3

    Service: RelatedProducts

    To the top

    The "RelatedProducts" service returns a list of related products for a specified product ID. The "tag" parameter can be added to limit the result to related products with a specific tag - e.g. "sparePartsFor".

    The table below displays all available parameters for the "RelatedProducts" service. The service is located at www.esellercloud.com/Services/ProductService.asmx/RelatedProducts?

    Parameter Name Description Example
    v Version number Version number v=1.0
    context String Is defined by the client and is echoed by the server in the JSON result. Can be used to correlate responses with requests - especially useful in situations where batches of requests are made. frontPageProducts
    cId Currency ID Integer (the internal ID of an active currency) cId=232
    langId Language ID Integer (the internal ID of an active language) langId=2
    countryId Country ID Integer (the internal ID of an active country) countryId=23
    locId Location ID Integer (the internal ID of an active location or empty if location is not used) locId=735
    customerId Authorization token String identifying authorization for the request. The value is created by the server, and can be retrieved by <eSeller:Select value-of=”context: AuthToken” /> or <eSeller:Select value-of=”context: AuthTokenUrlEncoded” />, which is url encoded and can be used directly in a url. customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==
    pId Product ID Integer – specifies the item number of a product pId=1218427
    pEId Product external ID String – specifies the external ID of a product. Note that pId, pEId and pLId are mutually exclusive which means that you can only specify one of them in the call. pEId=LK102A
    pLId Product Lifetime ID String – specifies the Lifetime ID of a product. Note that pId, pEId and pLId are mutually exclusive which means that you can only specify one of them in the call. pLId=500055513
    imgSizeId Image Size ID Integer – specifies the product image size for the product list (the Internal ID of an image size) imgSizeId=4363
    maxResults Maximum number of related products Integer – specifies the maximum number of related products to retrieve. maxResults=20
    tag Related product tag Display all related products with this tag. If this attribute is omitted, all related products with no tag are displayed. tag="spare-parts"
    include Comma-separated list of properties to include in the JSON result (that are otherwise omitted) Possible values are:
    shortDesc: Short description
    longDesc: Long description
    shortDescRecurse: Includes short description from products in nested products (e.g. bill of materials). Adds JSON property “shortDesc” in nested product listings.
    longDescRecurse: Includes long description from products in nested products (e.g. bill of materials). Adds JSON property “longDesc” in nested product listings.
    NOTE: Due to the potentially huge amount of data we advise that short and long description are only included where necessary!
    bom: Expands bill of materials specification - adds JSON property "bomSpec" containing a list of all products in the bill of materials.
    include=shortDesc,longDesc<

    Example requests

    Get a list of related products with a specified tag

    /Services/ProductService.asmx/RelatedProducts?v=1.0&cId=54&langId=1&countryId=11&locId=&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&imgSizeId=0&pId=113386&maxResults=10
    - Get all products related to the product with ID 113386 - maximum 10 results.

    Get all related products for a product specified with external ID

    /Services/ProductService.asmx/RelatedProducts?v=1.0&cId=54&langId=1&countryId=11&locId=&customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==&imgSizeId=0&pEId=KL012Y
    - Get all products related to the product with external ID KL012Y.

    Response

    Below you see all fields provided in the JSON response

    Field Description Example
    apiVersion String – API version number – similar to VERSIONNUMBER in path 1.0
    id Integer – a unique number that allows a request to be tied to a log entry. All log entries related to JSON services MUST contain the id 12345
    context String - Echoes the context sent by the client frontPageProducts
    servedBy Name of the active server. Used for testing purposes - identifying which server is serving the content. "servedBy": "ESLWEB305"
    data Object – Object containing data  
    kind String – Specifies the object type. In the data object the kind will be products (in plural) Products
    updated Datetime of when a fresh (non-cached) version of the response was retrieved from the server 2015-10-02T13:13:53.1388591+00:00
    lang String- BCP 47 formatted language specification. Lang will always reflect the requested language En
    currentProductsCount Number of entries in the current response. 13
    productId The ID of the product for which related products are retrieved 112039
    items Array of Product objects  
    extVariantId The external variant ID - otherwise null 112455 or null
    eSellerId The internal eSeller cloud product ID 243534
    id The product id 242P233
    name Product name Ball bearings
    variantId If 0, the product is not a variant - otherwise this is the variant ID 213344
    variantValues An ordered array of variant values - otherwise null "Red", "40", "Cotton" or null
    showProductId Determines if the if the eSeller Cloud internal product ID should be shown True
    showProductEAN Determines if the product EAN should be shown True
    showProductManufacturereSKU Determines if the product manufacturer SKU should be shown True
    showExtProductId Determines if the external product ID should be shown True
    showAltExtProductID Determines if the alternate product ID should be shown True
    hasVariants Specifies whether a product has variants. Implies that the current product is a variant master True
    isVariant Determines if a product is a subvariant True
    hasSalesPrice Specifies whether the product has one or more sales prices True
    showSalesPrice Specities whether the sales price should be displayed True
    manufacturerSKU String representing the manufacturer SKU HBP54221
    hasExpectedDeliveryDate Specifies whether an expected delivery date is set on the product False
    expectedDeliveryDate Date representing when a product will be in stock again 2014-07-05T00:00:00
    expectedDeliveryDateFormatted Formatted date representing when a product will be in stock again 05-07-2014
    shipmentType Integer specifying the available shipment type.
    0 = shipping & collect at store
    1 = only collect at store
    2 = only shipping
    3 = virtual
    0
    isBuyable Determines if a product can be bought and hence if the “add to basket” button should be shown True
    showAddToBasket Specifies whether the “add to basket” button should be shown True
    showAddToFavorites Determines if the “add to favorites” button should be shown False
    addToFavoritesUrl The URL for adding the product to the favorites list /baction/atf.aspx?pid=1210839&rurl=%2fServices%2fProductService.asmx%2fProductList%3fv%3d1.0%26so%3d3%26cId%3d54%26langId%3d1%26countryId%3d11%26locId%3d14922%26customerId%3d0%26mId%3d40620%26p%3d1%26rp%3d60%26serial%3d07c18a00a9584881a42827364195adf4
    boundToInventoryCount Determines if a product can be sold if the inventory count is equal to or less than zero False
    inventoryCount Integer - The number of products in the inventory 23
    inventoryCountFormatted A formatted string representing the number of products in the inventory “23”
    grossWeight The product gross weight in grams 12.000
    grossWeightFormatted A formatted string representing the product gross weight in grams “12,000”
    stockStatusText A text describing the stock status of the product  
    inStockMessage A text to display if the product is in stock In stock – ships in 2-3 business days
    notInStockMessage A text to display if the product is not in stock Not in stock – ships in 8-10 business days
    bundleSize The number of products that can be sold separately 1
    smallestSalesUnit The minimum number of products that can be sold 1
    secondaryId The secondary product ID 12312abc
    posId Product ID in any POS system 500012487
    EAN Product EAN 126749812548
    unitOfMeasure The unit of measure related measuring the amount of products (barrels, containers, pallets) Pair
    unitOfMeasureDesc A string describing the unit of measure Pair (2 pieces)
    manufacturer Name of the product manufacturer Hugo Boss
    linkURL The product link URL /pi/Pants_113105_6692.aspx
    linkName The text related to the product link Hugo Boss pants
    vendor String representing the product vendor HUGO BOSS STORE
    URLPathAndQuery URL to the product detail page /pi/Pants_113105_6692.aspx
    items:salesPrices An array containing objects specifying sales prices for the product  
    quantity The number of products needed to obtain the tag price 2
    quantityFormatted The formatted string representing the number of products needed to obtain the tag price “2”
    salesUnit The unit of measure 3
    hasBetterPrice Specifies whether a better (lower) price exists – e.g. if a sales price with a quantity of 10 gives a lower price than the sales price with a quantity of 1 False
    tagPrice The price associated with the current quantity 125.00 OR Empty string (“”)
    tagPriceFormatted The formatted string representing the price associated with the current quantity “DKK 125,00” OR Empty string (“”)
    tagPriceVATAmount The part of the tag price which is taken up by VAT 25.00 OR Empty string (“”)
    tagPriceVATAmountFormatted The formatted string representing the part of the tag price which is taken up by VAT “DKK 25,00” OR Empty string (“”)
    tagPriceExcVATAmountFormatted The formatted string representing the part of the tag price which is not VAT “DKK 100,00” OR Empty string (“”)
    tagPriceExcVATAmount The part of the tag price which is not VAT 100.00 OR Empty string (“”)
    tagPriceIncVATAmountFormatted The formatted string representing the tag price including VAT “DKK 125,00”
    tagPriceIncVATAmount The tag price including VAT 125.00 OR Empty string (“”)
    totalTagPrice Tag price multiplied with quantity 200.00 OR Empty string (“”)
    totalTagPriceFormatted Formatted string representing tag price multiplied with quantity “DKK 200,00”
    totalTagPriceVATAmount The amount of the total tag price that is VAT 40.00 OR Empty string (“”)
    totalTagPriceVATAmountFormatted A formatted string representing the amount of the total tag price that is VAT “DKK 40,00” OR empty string (“”)
    totalTagPriceExcVATAmountFormatted A formatted string representing the total tag price excluding VAT “DKK 160,00”
    totalTagPriceExcVATAmount The total tag price excluding VAT 160.00
    totalTagPriceIncVATAmountFormatted A formatted string representing the total tag price including VAT “DKK 200,00”
    totalTagPriceExcVATAmount The total tag price including VAT 200.00
    hasPreviousPrice Specifies whether a previous tag price is provided True
    previousTagPriceFormatted The formatted string representing the previous tag price “DKK 300,00” OR Empty string (“”)
    previousTagPrice The previous tag price 300.00 OR Empty string (“”)
    hasRecommendedPrice Specifies whether a list tag price is provided True
    listTagPrice The product list price 400.00 OR Empty string (“”)
    listTagPriceFormatted The formatted string representing the product list price “DKK 400,00” OR Empty string (“”)
    lineDiscountPercentage The discount percentage associated with the product 10 OR Empty string (“”)
    lineDiscountPercentageFormatted The formatted string representing the discount percentage associated with the product “10” OR Empty string (“”)
    tagPriceLineDiscountAmount The amount in the requested currency corresponding to the discount percentage 20 OR Empty string (“”)
    tagPriceLineDiscountAmountFormatted The formatted string representing the amount in the requested currency corresponding to the discount percentage “DKK 20,00” OR Empty string (“”)
    description A description of the sales price “Get 3 – pay for 2!”
    items:images An array of images  
    url URL to product images /Services/ImageHandler.ashx?imgId=120834&sizeId=4363 OR Empty string (“”)
    frontPageProduct Determines if a product is shown on the frontpage True
    greatBuy Determines if a great buy splash is to be shown on the product True
    noveltyProduct Determines if a noveltyproduct splash is to be shown on the product False
    deprecated Determines if a product is deprecated. Deprecated products should not be buyable True
    kind String – Specifies the object type. Product
    items:customFields An array containing all custom fields and custom field values  
    costumFieldName String representing the value of customFieldName. Note that custumFieldName will be substituted with the name of the custom field (eg. “Product:customFields:colorCode”) Black
    isGiftCard Boolean - True if the product is a gift card product False
    productRelatedLink The related link of the product (e.g. a page with additional product information at the manufacturer website) http://www.esellercloud.com
    productRelatedLinkText The text used to describe the related link See a detailed specification at the manufacturer website
    suggestedQuantity The suggested quantity of a product in a product collection. For all calls not using the "pcEId" or "pcTag" parameters, the value will be null. 3

    Service: ProductVariants

    To the top

    The "ProductVariants" service returns all product variants of a main variant product.

    The table below displays all available parameters for the "ProductVariants" service. The service is located at www.esellercloud.com/Services/ProductService.asmx/ProductVariants?

    Parameter Name Description Example
    v Version number Version number v=1.0
    context String Is defined by the client and is echoed by the server in the JSON result. Can be used to correlate responses with requests - especially useful in situations where batches of requests are made. frontPageProducts
    cId Currency ID Integer (the internal ID of an active currency) cId=232
    langId Language ID Integer (the internal ID of an active language) langId=2
    countryId Country ID Integer (the internal ID of an active country) countryId=23
    locId Location ID Integer (the internal ID of an active location or empty if location is not used) locId=735
    customerId Authorization token String identifying authorization for the request. The value is created by the server, and can be retrieved by <eSeller:Select value-of=”context: AuthToken” /> or <eSeller:Select value-of=”context: AuthTokenUrlEncoded” />, which is url encoded and can be used directly in a url. customerId=r/PBJU4aAIz+OJ40XGWJnXjFTdjb2123456P2geSqRDk4sEdN8Hasg==
    pId Product ID Integer – specifies the item number of a product pId=1218427
    pEId Product external ID String – specifies the external ID of a product pEId=1218427
    pLId Product lifetime ID String – specifies the lifetime ID of a product pLId=1218427
    imgSizeId Image Size ID Integer – specifies the product image size for the product list (the Internal ID of an image size) imgSizeId=4363
    include Comma-separated list of properties to include in the JSON result (that are otherwise omitted) Possible values are:
    variantDimensionMap: adds JSON property "variantDimensionMap" to the data segment of the JSON result (also for nested product listings). Contains a mapping of all variant dimensions and variant dimension values for all variants in the result set.
    include=variantDimensionMap

    Example Requests

    Get all product variants for a main variant product

    /Services/ProductService.asmx/ProductVariants?v=1.0&cId=54&langId=1&countryId=11&locId=13&imgSizeId=0&pId=113381
    - Get all variants of the product with ID 113381 (a main variant product).

    Response

    Below you see all fields provided in the JSON response

    Field Description Example
    apiVersion String – API version number – similar to VERSIONNUMBER in path 1.0
    id Integer – a unique number that allows a request to be tied to a log entry. All log entries related to JSON services MUST contain the id 12345
    context String - Echoes the context sent by the client frontPageProducts
    servedBy Name of the active server. Used for testing purposes - identifying which server is serving the content. "servedBy": "ESLWEB305"
    data Object – Object containing data  
    kind String – Specifies the object type. In the data object the kind will be products (in plural) Products
    updated Datetime of when a fresh (non-cached) version of the response was retrieved from the server 2015-10-02T13:13:53.1388591+00:00
    lang String- BCP 47 formatted language specification. Lang will always reflect the requested language En
    totalVariants Total number of product variants in the current response. (Note: only applicable to ProductVariants requests) 12
    productId The ID of the product for which variant products are retrieved. 221002
    variantDimensions An array of variant dimensions for the product "color","size"
    items Array of Product objects  
    extVariantId The external variant ID - otherwise null 112455 or null
    eSellerId The internal eSeller cloud product ID 243534
    id The product id 242P233
    name Product name Ball bearings
    variantId If 0, the product is not a variant - otherwise this is the variant ID 213344
    variantValues An ordered array of variant values - otherwise null "Red", "40", "Cotton" or null
    showProductId Determines if the if the eSeller Cloud internal product ID should be shown True
    showProductEAN Determines if the product EAN should be shown True
    showProductManufacturereSKU Determines if the product manufacturer SKU should be shown True
    showExtProductId Determines if the external product ID should be shown True
    showAltExtProductID Determines if the alternate product ID should be shown True
    hasVariants Specifies whether a product has variants. Implies that the current product is a variant master True
    isVariant Determines if a product is a subvariant True
    hasSalesPrice Specifies whether the product has one or more sales prices True
    showSalesPrice Specities whether the sales price should be displayed True
    manufacturerSKU String representing the manufacturer SKU HBP54221
    hasExpectedDeliveryDate Specifies whether an expected delivery date is set on the product False
    expectedDeliveryDate Date representing when a product will be in stock again 2014-07-05T00:00:00
    expectedDeliveryDateFormatted Formatted date representing when a product will be in stock again 05-07-2014
    shipmentType Integer specifying the available shipment type.
    0 = shipping & collect at store
    1 = only collect at store
    2 = only shipping
    3 = virtual
    0
    isBuyable Determines if a product can be bought and hence if the “add to basket” button should be shown True
    showAddToBasket Specifies whether the “add to basket” button should be shown True
    showAddToFavorites Determines if the “add to favorites” button should be shown False
    addToFavoritesUrl The URL for adding the product to the favorites list /baction/atf.aspx?pid=1210839&rurl=%2fServices%2fProductService.asmx%2fProductList%3fv%3d1.0%26so%3d3%26cId%3d54%26langId%3d1%26countryId%3d11%26locId%3d14922%26customerId%3d0%26mId%3d40620%26p%3d1%26rp%3d60%26serial%3d07c18a00a9584881a42827364195adf4
    boundToInventoryCount Determines if a product can be sold if the inventory count is equal to or less than zero False
    inventoryCount Integer - The number of products in the inventory 23
    inventoryCountFormatted A formatted string representing the number of products in the inventory “23”
    grossWeight The product gross weight in grams 12.000
    grossWeightFormatted A formatted string representing the product gross weight in grams “12,000”
    stockStatusText A text describing the stock status of the product  
    inStockMessage A text to display if the product is in stock In stock – ships in 2-3 business days
    notInStockMessage A text to display if the product is not in stock Not in stock – ships in 8-10 business days
    bundleSize The number of products that can be sold separately 1
    smallestSalesUnit The minimum number of products that can be sold 1
    secondaryId The secondary product ID 12312abc
    posId Product ID in any POS system 500012487
    EAN Product EAN 126749812548
    unitOfMeasure The unit of measure related measuring the amount of products (barrels, containers, pallets) Pair
    unitOfMeasureDesc A string describing the unit of measure Pair (2 pieces)
    manufacturer Name of the product manufacturer Hugo Boss
    linkURL The product link URL /pi/Pants_113105_6692.aspx
    linkName The text related to the product link Hugo Boss pants
    vendor String representing the product vendor HUGO BOSS STORE
    URLPathAndQuery URL to the product detail page /pi/Pants_113105_6692.aspx
    items:salesPrices An array containing objects specifying sales prices for the product  
    quantity The number of products needed to obtain the tag price 2
    quantityFormatted The formatted string representing the number of products needed to obtain the tag price “2”
    salesUnit The unit of measure 3
    hasBetterPrice Specifies whether a better (lower) price exists – e.g. if a sales price with a quantity of 10 gives a lower price than the sales price with a quantity of 1 False
    tagPrice The price associated with the current quantity 125.00 OR Empty string (“”)
    tagPriceFormatted The formatted string representing the price associated with the current quantity “DKK 125,00” OR Empty string (“”)
    tagPriceVATAmount The part of the tag price which is taken up by VAT 25.00 OR Empty string (“”)
    tagPriceVATAmountFormatted The formatted string representing the part of the tag price which is taken up by VAT “DKK 25,00” OR Empty string (“”)
    tagPriceExcVATAmountFormatted The formatted string representing the part of the tag price which is not VAT “DKK 100,00” OR Empty string (“”)
    tagPriceExcVATAmount The part of the tag price which is not VAT 100.00 OR Empty string (“”)
    tagPriceIncVATAmountFormatted The formatted string representing the tag price including VAT “DKK 125,00”
    tagPriceIncVATAmount The tag price including VAT 125.00 OR Empty string (“”)
    totalTagPrice Tag price multiplied with quantity 200.00 OR Empty string (“”)
    totalTagPriceFormatted Formatted string representing tag price multiplied with quantity “DKK 200,00”
    totalTagPriceVATAmount The amount of the total tag price that is VAT 40.00 OR Empty string (“”)
    totalTagPriceVATAmountFormatted A formatted string representing the amount of the total tag price that is VAT “DKK 40,00” OR empty string (“”)
    totalTagPriceExcVATAmountFormatted A formatted string representing the total tag price excluding VAT “DKK 160,00”
    totalTagPriceExcVATAmount The total tag price excluding VAT 160.00
    totalTagPriceIncVATAmountFormatted A formatted string representing the total tag price including VAT “DKK 200,00”
    totalTagPriceExcVATAmount The total tag price including VAT 200.00
    hasPreviousPrice Specifies whether a previous tag price is provided True
    previousTagPriceFormatted The formatted string representing the previous tag price “DKK 300,00” OR Empty string (“”)
    previousTagPrice The previous tag price 300.00 OR Empty string (“”)
    hasRecommendedPrice Specifies whether a list tag price is provided True
    listTagPrice The product list price 400.00 OR Empty string (“”)
    listTagPriceFormatted The formatted string representing the product list price “DKK 400,00” OR Empty string (“”)
    lineDiscountPercentage The discount percentage associated with the product 10 OR Empty string (“”)
    lineDiscountPercentageFormatted The formatted string representing the discount percentage associated with the product “10” OR Empty string (“”)
    tagPriceLineDiscountAmount The amount in the requested currency corresponding to the discount percentage 20 OR Empty string (“”)
    tagPriceLineDiscountAmountFormatted The formatted string representing the amount in the requested currency corresponding to the discount percentage “DKK 20,00” OR Empty string (“”)
    description A description of the sales price “Get 3 – pay for 2!”
    items:images An array of images  
    url URL to product images /Services/ImageHandler.ashx?imgId=120834&sizeId=4363 OR Empty string (“”)
    frontPageProduct Determines if a product is shown on the frontpage True
    greatBuy Determines if a great buy splash is to be shown on the product True
    noveltyProduct Determines if a noveltyproduct splash is to be shown on the product False
    deprecated Determines if a product is deprecated. Deprecated products should not be buyable True
    kind String – Specifies the object type. Product
    items:customFields An array containing all custom fields and custom field values  
    costumFieldName String representing the value of customFieldName. Note that custumFieldName will be substituted with the name of the custom field (eg. “Product:customFields:colorCode”) - product variants inherit custom fields from the main variant product. Black
    isGiftCard Boolean - True if the product is a gift card product False
    productRelatedLink The related link of the product (e.g. a page with additional product information at the manufacturer website) http://www.esellercloud.com
    productRelatedLinkText The text used to describe the related link See a detailed specification at the manufacturer website
    suggestedQuantity The suggested quantity of a product in a product collection. For all calls not using the "pcEId" or "pcTag" parameters, the value will be null. 3

    ImageHandler

    To the top

    The ImageHandler is a service that is able to provide productImages. The ImageHandler Service is referenced from the output of the JSON product list.

    ImageHandler returns a product image encoded with mime type: image/jpeg if the provided imageid is found, otherwise a 404 page is shown.

    The ImageHandler requires two case sensitive parameters: imgId and sizeId
    imgId is an internal image id as provided by the json service
    sizeId is the internal image size id

    Possible image size ids can be found in the shop administration under Home >> Design >> Overall design >> Image Sizes.

    The image size id can be found by hovering the mouse over one of the image sizes and making note of the parameter “isid” which is equivalent of the sizeId

    Any other parameters added to the ImageHandler url will negatively affect the load speed and will be discarded by the CDN

    SEO considerations when using the JSON product list

    To the top

    Previously, webcrawlers such as Googlebot, did not render javascript generated pages. This meant that it was necessary to use a special method to allow those crawlers to index the pages. This method, named _escaped_fragment_, has however been deprecated by recent advances in the abilities of crawlers. It is no longer necessary to take any special precautions to allow crawlers to index JSON based product list.

    Shops that are using the _escaped_fragment_ method can continue to do so without any detrimental effect on ranking and indexing whereas new shops could and should omit implementation of the escaped fragment standard.

    Performance considerations when using the JSON product list

    eSeller Cloud uses extensive caching to ensure great performance when getting product lists, but naturally the number of products returned by the service has great influence on how well it performs in terms of response times.

    We recommend being very observant of the number of products one tries to get using the service and do not recommend anyone attempting to get lists containing more than 5000 products, as performance may suffer.

    Adding the JSON product list to a shop

    To the top

    If your webshop already has a product list, you can simply change the control that renders the product list. To do so, go to Design > Overall design > Other content design (in drop-down selector) and select the content design for your product list.

    Go to the Definition tab and locate the product list control (the control with ControlType “ProductList”):

    <eSeller:Control ControlType="ProductList" Controlid="ProductList" IsMainProductlist="True" /> 

    Change the control to the following:

    <eSeller:Control ControlType="JsonProductList" Controlid="JsonProductList" IsMainProductlist="True" TestMode="False" />

    - which is the control rendering the JSON product list. If TestMode is set to “True”, the JSON result will be rendered as plain text in the content element. This mode is only suitable for testing – the script generating the plain text rendering (jsonProductList.js) should not be used for anything but testing. When TestMode is set to “False” all logic responsible for retrieving and displaying information must be provided by the designer.

    Re-saving product sorting elements and product filters

    The JSON product list works with product sorting elements and product filters, however it might be necessary to update the elements by re-saving them in the shop administration – note that this only applies to shops using product sorting and/or product filtering.

    Re-save product filters by navigating to Stock > Product Filtering and click the “Manage product filtering menu” button – click “Save”.

    Re-save the product sorting element by navigating to Stock > Product Sorting and click the “Manage product sorting element” button – click “Save”.