Discover/pnp.co.za API
live

pnp.co.za APIpnp.co.za

Access Pick n Pay grocery data: search products, browse categories, get specials, product details, and store locations via 6 structured endpoints.

Endpoints
6
Updated
3mo ago
Try it
Page number (0-based)
Sort order. Accepted values: relevance, price-asc, price-desc
Search keyword (e.g. 'milk', 'bread')
Additional filter string appended to the search query (e.g. ':isOnPromotion:On+Promotion')
Number of results per page
api.parse.bot/scraper/b87810bc-903f-41b8-b38d-c5c911cab324/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/b87810bc-903f-41b8-b38d-c5c911cab324/search_products?query=milk' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 6 totalclick to expand

Search for products by keyword with support for pagination, sorting, and filtering. Returns matching products, facets for refinement, pagination info, and breadcrumbs.

Input
ParamTypeDescription
pageintegerPage number (0-based)
sortstringSort order. Accepted values: relevance, price-asc, price-desc
queryrequiredstringSearch keyword (e.g. 'milk', 'bread')
filtersstringAdditional filter string appended to the search query (e.g. ':isOnPromotion:On+Promotion')
page_sizeintegerNumber of results per page
Response
{
  "type": "object",
  "fields": {
    "facets": "array of facet objects for filtering (category, certifications, promotion status)",
    "products": "array of product objects with code, name, price, images, stock, and availability",
    "pagination": "object with currentPage, pageSize, sort, totalPages, totalResults",
    "breadcrumbs": "array of breadcrumb objects for navigation context",
    "currentQuery": "object with query value and URL",
    "freeTextSearch": "string echoing the original search term"
  },
  "sample": {
    "data": {
      "facets": [
        {
          "name": "category",
          "values": [
            {
              "name": "Bakery",
              "count": 99
            }
          ]
        }
      ],
      "products": [
        {
          "code": "000000000000129009_EA",
          "name": "Albany Superior White Sliced Bread 700g",
          "price": {
            "value": 18.49,
            "currencyIso": "ZAR",
            "formattedValue": "R18.49"
          },
          "stock": {
            "stockLevelStatus": "inStock"
          },
          "images": [
            {
              "url": "https://cdn-prd-02.pnp.co.za/sys-master/images/h53/h40/11327325569054/silo-product-image-v2-08Dec2023-152812-6001253010178-Straight_on-193523-6046_400Wx400H",
              "format": "product"
            }
          ],
          "available": true
        }
      ],
      "pagination": {
        "sort": "relevance",
        "pageSize": 72,
        "totalPages": 2,
        "currentPage": 0,
        "totalResults": 129
      },
      "breadcrumbs": [],
      "currentQuery": {
        "query": {
          "value": "bread:relevance"
        }
      },
      "freeTextSearch": "bread"
    },
    "status": "success"
  }
}

About the pnp.co.za API

The Pick n Pay API exposes 6 endpoints covering product search, category browsing, specials, detailed product data, and store locations from pnp.co.za. The search_products endpoint returns matching products alongside facets for refinement, pagination metadata, and breadcrumbs, while get_product_detail delivers nutritional classifications, stock levels, and full image sets for any individual product code.

Product Search and Discovery

The search_products endpoint accepts a required query string plus optional page, page_size, and sort parameters (relevance, price-asc, price-desc). Results include a products array — each entry carrying code, name, price, images, stock, and available — alongside a facets array that surfaces category, certification, and promotion-status filters. The filters input lets you narrow results further, for example to only on-promotion items, by appending a filter string to the query. get_category_products works identically but takes a category_id (e.g. beverages-423144840) instead of a free-text query, and returns the same product and facet shape with category hierarchy breadcrumbs.

Product Details and Specials

get_product_detail takes a single product_code obtained from search or category results and returns the full record: description, classifications (grouped nutritional and product features), categories array, images with format and alt-text, and a stock object with both stockLevel and stockLevelStatus. The get_specials endpoint lists currently promoted products; each product object includes price with oldPrice and savings details alongside standard stock and image fields. An optional category_id input scopes specials to a single department.

Categories and Store Locations

get_all_categories requires no inputs and returns top-level department navigation as an array of objects with categoryCode, linkName, and url — useful for seeding a category browser or discovering valid category_id values for other endpoints. get_stores accepts an optional query string (name, city, suburb, or street) and returns a stores array with storeId, storeName, storeAddress, storeType, telephone, email, tradingHours, and geolocation coordinates. Omitting the query returns all stores.

Common use cases
  • Build a grocery price comparison tool using search_products with price-asc sorting across multiple queries.
  • Track weekly specials and savings by polling get_specials per category and comparing oldPrice against current price.
  • Populate a store locator map using geolocation, tradingHours, and storeType from get_stores.
  • Extract nutritional classifications from get_product_detail to power a diet-tracking or allergen-screening app.
  • Index a full product catalog by iterating get_category_products across all category_id values from get_all_categories.
  • Monitor stock availability for specific SKUs by checking stockLevelStatus in get_product_detail on a schedule.
  • Scope promotion alerts to a single department by combining get_specials with a category_id from get_all_categories.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Pick n Pay have an official public developer API?+
Pick n Pay does not publish a public developer API or developer portal for third-party access to their product and store data.
How are facets returned from `search_products` and `get_category_products` useful for filtering?+
Both endpoints return a facets array containing filter dimensions such as sub-category, certifications, and promotion status. You can pass these filter values back via the filters input parameter on the next request to narrow results — for example, appending :isOnPromotion:On+Promotion to show only discounted items within a search or category query.
Does the API return product reviews or ratings?+
Not currently. The API covers product details including descriptions, classifications, pricing, images, and stock levels, but customer reviews and ratings are not part of any endpoint response. You can fork the API on Parse and revise it to add an endpoint targeting product review data.
What are the pagination conventions across endpoints?+
All paginated endpoints use a 0-based page parameter. The pagination object in each response includes currentPage, pageSize, totalPages, and totalResults, so you can iterate pages programmatically until currentPage reaches totalPages - 1. The get_stores endpoint returns page, totalCount, and totalPages in its pagination object using the same pattern.
Does the API cover Click & Collect or delivery slot availability?+
Not currently. The API exposes store locations with tradingHours and geolocation, and product-level stock data, but fulfilment slots, Click & Collect scheduling, and delivery windows are not included in any endpoint. You can fork the API on Parse and revise it to add endpoints covering those fulfilment details.
Page content last updated . Spec covers 6 endpoints from pnp.co.za.
Related APIs in Food DiningSee all →
dia.es API
Browse and search products across Día supermarket's catalog, view product details, categories, and current offers available on dia.es. Find specific items, explore product categories and subcategories, and discover active promotions.
kroger.com API
Find Kroger grocery store locations across the US organized by state, city, and search parameters. Get detailed store information including directories and specifics for any Kroger location in your area.
coupons.com API
Search and discover coupons, printable offers, and store-specific deals from Coupons.com. Browse top featured offers, find deals across thousands of retailers, and access aggregated coupon data including discount amounts, usage conditions, and expiration details.
vivino.com API
Search and discover wines across thousands of options while accessing detailed information like user reviews, pricing, winery profiles, and food pairing recommendations. Explore grape varieties, compare wines side-by-side, and find the perfect bottle based on ratings and availability.
winecompanion.com.au API
Browse and explore Australian wineries from Wine Companion's comprehensive directory, including contact details, ratings, and regional locations. Search and filter by state, region, or facilities to find wineries across Australia.
liquor.com API
Find and browse thousands of cocktail recipes with ratings and user reviews, search drinks by ingredient or category, and read curated articles about spirits and mixology. Get detailed recipe instructions, comments from other users, and expert content all in one place.
bigbasket.com API
Browse and search BigBasket's online grocery catalog. Retrieve product details, pricing, stock availability, category trees, search suggestions, homepage promotions, and delivery coverage — all in one API.
opentable.com API
Search for restaurants across the US with ratings, reviews, photos, and pricing information, plus get real-time availability and autocomplete suggestions as you type. Check reservation openings and explore detailed restaurant features to find and book your perfect dining experience.