PRoductS

Fetching products using Search

Search over Tipser public product repository, with support for filtering by text, brands, prices with sorting and pagination.

GET https://t3-prod-api.tipser.com/v4/products

Query string parameters

Example requests (try me):

https://t3-prod-api.tipser.com/v4/products?query=vita+skor&brands=Birkenstock

https://t3-prod-api.tipser.com/v4/products?limit=3

https://t3-prod-api.tipser.com/v4/products?limit=3&skip=3

Fetch product by id

GET https://t3-prod-api.tipser.com/v4/products/:productId(?pos=:posId)

Query string parameters

  • productId: string
  • pos: string (optional) - posId needed to ie. show pos-specific discounts etc.

https://t3-prod-api.tipser.com/v4/products/5889a1648aa0ce36b8cd5663

https://t3-prod-api.tipser.com/v4/products/5889a1648aa0ce36b8cd5663?pos=54fdfcf378415516b41e88c8

Fetch product by Merchant url

GET https://t3-prod-api.tipser.com/v4/products/bymerchanturl?posId=:posId&url=:url

Query string parameters

  • posId: string (optional) - posId needed to ie. show pos-specific discounts etc.
  • url: string - merchant product url

Product Model

{
    id: string,
    title: string,
    description: string,
    priceIncVat: {
        value: decimal,
        currency: string,
        formatted: string
    },
    vat: {
        value: integer,
        formatted: string
    },
    currency: string,
    deliveryTime: string,
    deliveryCost: {
        value: decimal,
        currency: string,
        formatted: string
    },
    brand: string,
    categories: [{
        department: string,
        section: string
    }],
    categoriesValue: string,
    market: string,
    merchant: string,
    merchantName: string,
    accessRights: string,
    isInStock: boolean,
    images: [{
            250 x: URI,
            450 x: URI,
            960 x: URI,
            id: string,
            original: URI,
            50 x50: URI
        },
        {...}
    ],
    variants: [{
            id: string,
            productId: string,
            title: string,
            description: string,
            stockCount: integer,
            stockCountUnlimited: boolean,
            attributes: {
                key: string
            },
            attributesValue: string,
            priceIncVat: {
                value: decimal,
                currency: string,
                formatted: string
            },
            vat: {
                value: integer,
                formatted: string
            },
            currency: string,
            images: [{
                250 x: URI,
                450 x: URI,
                960 x: URI,
                id: string,
                original: URI,
                50 x50: URI
               },
               {...}
            ],
            sku: string,
            isInStock: boolean,
            gtin: {
                type: string,
                value: string
            },
            mpn: string,
            unitPrice: {
                value: decimal,
                currency: string,
                formatted: string
            },
            unitPriceBaseMeasure: {
                value: decimal,
                unit: string
            },
            metadata: {
                color: { 
                    values: [ string, ... ]
                },
                material: {
                    values: [ string, ... ]
                },
                pattern: {
                    values: [ string, ...]
                },
                gender: {
                    values: [ string, ... ]
                }
            }
        },
        {...}
    ],
    lastUpdateDate: date,
    freeReturn: boolean
}

Essential product model attributes

  • id: used to reference for the product when adding to cart or getting to know more about it (ie. list of variants, similar products)
  • images: a list of image objects, keyed by the resolution (250,450,960) but also with an option to get the original size. Also, note underlined URI fragment (h_50,w_50), that you may modify to get the desired image size.
  • price: original price of an item
  • salesPrice: the price that we currently sell the item for. If it is equal to the price, it means that there's no any sale. If the price is lower, then it means the product is on a sale
  • available: if true, you should be able to add it to cart. else no
  • variants: all SKUs nested into the master product
  • attributes: what concrete product variant is that (color, size, sex etc)

Category names

Get translated category names for a product

To get the translated category names, used in the product model, you can use the API endpoint: