Skip to main content

Retail API

Access real-time and historical pricing data for retail products across major South African retailers.

Search Products

GET /api/v1/retail/products

Query Parameters

ParameterTypeDescription
searchstringSearch name, description, or brand
brandstringFilter by brand name
categorystringFilter by category
storestringFilter by store name
onlySpecialsbooleanOnly return products on special
sortBystringnewest, price_asc, price_desc, name
pagenumberPage number (default: 1)
limitnumberResults per page (max: 100)

Example Request

curl -H "x-api-key: your_key" \
  "https://visita.co.za/api/v1/retail/products?search=milk&onlySpecials=true"

Get Product Details

GET /api/v1/retail/products/:id
Returns full product information including:
  • Canonical product data
  • Current listings across all tracked stores
  • Historical pricing data for trend analysis
  • Enrichment Metadata: Nutrition facts, ingredients, and Eco-Score from OpenFoodFacts (where available).

Example Response

{
  "id": "8db036a7-0cfd-48a0-bab8-1c39eee3259e",
  "name": "Verification Snickers",
  "barcode": "5000159418547",
  "enrichment": {
    "nutrition": {
      "nutriments": { "energy-kj_100g": 2023, "fat_100g": 23, "sugars_100g": 51 },
      "nutritionGrades": "e"
    },
    "ingredients": {
      "ingredientsText": "Sugar, peanuts, glucose syrup, skimmed milk powder...",
      "allergens": ["en:peanuts", "en:milk", "en:soya"]
    },
    "ecoScore": { "grade": "d", "score": 38 },
    "servingSize": "50g",
    "productType": "food"
  },
  "listings": [ ... ],
  "history": [ ... ]
}

Retail Statistics

GET /api/v1/retail/stats
Returns platform-wide retail metrics such as totalProducts, activeSpecials, and trackedStores.

Retail Pulse Analytics (Enterprise/Pro)

Access deep-dive market intelligence through our analytics endpoints. These require the read:retail:analytics permission.
GET /api/v1/retail/analytics/trends
Returns historical monthly average price data by category. Useful for identifying inflation patterns or category-level pricing shifts.

Store Promotion Density

GET /api/v1/retail/analytics/promotions
Returns the percentage of products on special per store. Useful for competitor analysis and store positioning research.

Filter Options

GET /api/v1/retail/filters
Returns available filter values to assist in UI building:
  • brands: List of unique brands
  • categories: List of product categories
  • stores: List of all tracked stores
Retail data is aggregated from major retailers (Checkers, Pick n Pay, etc.) and updated daily.
GET /api/v1/retail/filters
Returns available filter values to assist in UI building:
  • brands: List of unique brands
  • categories: List of product categories
  • stores: List of all tracked stores
Retail data is aggregated from major retailers (Checkers, Pick n Pay, etc.) and updated daily.