Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Get Product List

Method Objective

The method allows getting a list of products in stock.

Syntax and parameters

Code Block
languagejs
themeFadeToGrey
sdk.getProductsList(params) { callback }

NameTypeRequirementDescription
params
requiredRequest parameters.
callbackfunctionrequiredCallback-function, where the API response will be passed to. 

Request Parameters

NameTypeRequirementDescription
limitnumberoptionallyThe maximum number of products in the API response (by default - 10).
pagenumberoptionallyPage number (first page - 1, by default - 1).
categoriesstringoptionallyComma-separated category IDs. If used, the API response will return only those products that are in the specified categories.
locationsstringoptionallyComma-separated location IDs. If used, the API will return only products available in the specified locations. Locations must be specified in the imported product catalog (XML, HTTP API).
brandsstringoptionallyComma-separated vendor names. If used, the API response will return only the products of the listed vendors. The vendors must be listed in the product feed.
filtersarrayoptionally

Array with the properties and their values that the products should match in the API response. The data matches the values of the "param" parameter of the product feed/catalog (XML, HTTP API). Format:

Code Block
["property1":["value1","value2"],"property2":["value1","value2"]]


API response

NameTypeDescription
productsarray

An array of objects with product information. Each object has the following properties:

  • barcode – product barcode, if it was imported in the product catalog (type: string)
  • brand – product vendor (type: string)
  • categories – an Object array with details of the product category hierarchy, where each object has properties:
    "id" – category ID (type: string)
    "level" – сategory level in the hierarchy (type: string)
    "name" – category name (type: string)
    "name_with_parent" – string name from the name of the parent and main product categories, separated by a "-" (type: string)
    "parent_id" – parent category ID (type: string)
    "url" – category page url (type: string)
  • category_ids – an array of IDs of the product category hierarchy (type: String array)
  • currency – product currency (type: string, matches the currency of the PersonaClick account, or the user value set in the settings of the PersonaClick account)
  • discount – the percentage difference between the old price and the current price (type: number)
  • discount_formatted – the percentage difference between the old and the current price that is formatted as a string with the "%" symbol (type: string)
  • id – product ID (type: string)
  • image_url – URL of the original product image (type: string)
  • image_url_handle – relative URL of the original product image (type: string)
  • image_url_resized – the object with the URLs of the resize product image. Available object keys matching the size of the image in pixels: 120, 140, 160, 180, 200, 220, 310, 520 (type: object)
  • is_new – new arrival product (type: boolean). See the parameter in the product catalog import (XML, HTTP API)
  • leftovers – rough number of the products left in stock. Available values are: 
    "one" - one product
    "few" - 2-10 products
    "lot" - over 10 products
  • model –  model and product name (type: string)
  • name – product name (type: string)
  • oldprice – integer old price of the product (type: number)
  • oldprice_formatted – formatted integer old price of the product, including currency (type: string)
  • oldprice_full – old price of the product (type: number)
  • oldprice_full_formatted – formatted old price of the product, including currency (type: string)
  • params – object array with pairs of "key" (type: string), "values" (type: array) properties. The data matches the values of the "param" parameter of the product feed/catalog (XML, HTTP API).
  • picture – link to the product image in the PersonaClick image repository (type: string)
  • price – integer current price of the product (type: number)
  • price_formatted – formatted integer current price of the product, including currency (type: string)
  • price_full – current price of the product (type: number)
  • price_full_formatted – formatted current price of the product, including currency (type: string)
  • rating – product rating (type: number)
  • relative_sales_rate – level of sales of current product ( in percentage) in relation to the maximum level of sales of products in the store (type: number)
  • sales_rate – level of product sales (absolute value) (type: number)
  • url – product page URL (type: string)
  • url_handle - relative product page URL (type: string)
products_totalnumberThe total number of products. The following request parameters don't affect this value: page, limit.
brandsObject array

An array of objects with information about available brands. Each object has the following properties:

  • name – brand name (type: string)
  • count – total number of brand products (type: number)
filtersObject

JSON string with properties and their values of all API response products. The data matches the values of the "param" parameter of the product feed/catalog (XML, HTTP API). Format:

Code Block
{"property1":["value1","value2"],"property2":["value1","value2"]}


price_rangeObject

The object containing the values of the minimum and maximum price of the products in the API response. Available properties:

  • min - minimum price
  • max - maximum price

Example of use

Code Block
languagejs
themeFadeToGrey
sdk.getProductsList(brands: "BRAND_1,BRAND_2", categories: "CATEGORY_1,CATEGORY_2", locations: "LOCATION_1,LOCATION_2", limit: 100, page: 3, filters: ["PARAM_NAME_1": ["PARAM_VALUE_1", "PARAM_VALUE_2"], "PARAM_NAME_2": ["PARAM_VALUE_1", "PARAM_VALUE_2"]]) {
    Result<ProductsListResponse, SDKError> in
	// productsListResponse in
	
    // Result response

}



Get Product Details

Method Objective

The method allows getting product details.

Syntax and parameters

Code Block
languagejs
themeFadeToGrey
sdk.getProductInfo(id) { callback }


NameTypeRequirementDescription
idstringrequiredProduct ID
callbackfunctionrequiredCallback-function, where the API response will be passed to. 

API response

NameTypeDescription
productsarray

An array of objects with product information. Each object has the following properties:

  • barcode – product barcode, if it was imported in the product catalog (type: string)
  • brand – product vendor (type: string)
  • categories – an Object array with details of the product category hierarchy, where each object has properties:
    "id" – category ID (type: string)
    "level" – сategory level in the hierarchy (type: string)
    "name" – category name (type: string)
    "name_with_parent" – string name from the name of the parent and main product categories, separated by a "-" (type: string)
    "parent_id" – parent category ID (type: string)
    "url" – category page url (type: string)
  • category_ids – an array of IDs of the product category hierarchy (type: String array)
  • currency – product currency (type: string, matches the currency of the PersonaClick account, or the user value set in the settings of the PersonaClick account)
  • discount – if the product has an old price (type: boolean)
  • model –  model and product name (type: string)
  • name – product name (type: string)
  • oldprice – integer old price of the product (type: number)
  • params – object array with pairs of "key" (type: string), "values" (type: array) properties. The data matches the values of the "param" parameter of the product feed/catalog (XML, HTTP API).
  • picture – link to the product image in the PersonaClick image repository (type: string)
  • price – integer current price of the product (type: number)
  • uniqid – product ID (type: string)
  • url – product page URL (type: string)

Example of use

Code Block
languagejs
themeFadeToGrey
sdk.getProductInfo(id: String) { 
    Result<ProductInfo, SDKError> in
    // productInfoResponse in
	
    // Result response

}



Get User's Current Cart

Method Objective

The method allows getting the current profile's cart.

Syntax and parameters

Code Block
languagejs
themeFadeToGrey
sdk.getProductsFromCart { callback }


NameTypeRequirementDescription
callbackfunctionrequiredCallback-function, where the API response will be passed to. 

API response

NameTypeDescription
itemsarray

An array of objects with product information. Each object has the following properties:

  • uniqid – product ID
  • quantity – product quantity

Example of use

Code Block
languagejs
themeFadeToGrey
sdk.getProductsFromCart { result in
    switch result {
        case .success(let items):
          print("cart items: \n \(items)")
        case .failure(let error):
          print("error: \(error)")
    }
}



Column

Page Navigation

Table of Contents
maxLevel2
indent0px
stylenone




Related Pages

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
sorttitle
cqllabel = "product_counters"