> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrapeunblocker.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Smyths Toys UK product stock, price, details and listings

> Smyths Toys UK (smythstoys.com) as JSON, in four modes. `mode=product` (the default when `code` is given) returns one product's stock and price as the JSON Smyths' own storefront reads (`/api/uk/en-gb/product/product-inventory`), unchanged: `code`, `type`, `prices` (`price`, `value`, `wasPrice`, `thenPrice`, `rrpPrice`, `discountedPercentage`), `hdSection` (home delivery: `stockStatus`, `stockMessage`, `isAvailableForDelivery`, `isPreOrder`, `expectedStockDate`, delivery messages), `ccSection` (click & collect: the same stock fields plus `storeName`, `deliveryMessage`, `storeClosed`), `ageSuitabilities`, `carrierType`, marketing messages and decals. `code` takes a product code (`225095`), a product or bundle page link or a product-inventory link; one product is one billed request. `mode=details&code=` returns the JSON Smyths' product page is built from (`/api/uk/en-gb/product`, a bundle's from `/api/uk/en-gb/b`), unchanged, one billed request: `name`, `brand`, `ean`, `description` (HTML), `webFeatures` (the key features list), the safety warnings `euWarning`, `safetyText`, `urgentSafetyTextHeading` and `urgentSafetyTextDescription`, `productImages` (the gallery: `thumbnail`, `original` and `zoom` per `galleryIndex`, videos as `youtubeUrl`), `prices`, `averageRating`, `numberOfReviews`, `breadcrumb`, `categoryHierarchy`, `ageSuitabilities`, `assemblyRequired` and more; a bundle adds `subProducts`. `url` and `breadcrumb` paths are relative to https://www.smythstoys.com/uk/en-gb. `mode=search&query=` and `mode=category&category=` find product codes: they return `products` (`code`, `name`, `url`, `prices` with the same fields, `currency`, `image`, `averageRating`, `productType` - `BUNDLE` for bundles - and `decals`) with `totalResults`, `totalPages` and `nextPage`, 60 per page; a category also returns its `title`, `breadcrumbs` and `subcategories` (`code`, `name`, `count`). Smyths' search returns its best 240 matches at most, a category every product it holds. Listings collect up to `max_results` from `page` on, billed one unit per page.



## OpenAPI

````yaml /api-reference/openapi.json post /marketplace/smyths-inventory
openapi: 3.1.0
info:
  title: ScrapeUnblocker API
  description: >-
    Public API for the ScrapeUnblocker proxy/anti-bot service. Authenticate
    every request with the `x-scrapeunblocker-key` header. Documented here:
    page-source extraction, Google SERP scraping, image fetch, and the dedicated
    plugin endpoints (search engines, marketplaces, reviews, travel, social and
    more). All other paths exist for internal operations and are intentionally
    hidden from this spec.
  version: 3.0.0
servers:
  - url: https://api.scrapeunblocker.com
    description: Production
security: []
paths:
  /marketplace/smyths-inventory:
    post:
      tags:
        - Plugins
      summary: Smyths Toys UK product stock, price, details and listings
      description: >-
        Smyths Toys UK (smythstoys.com) as JSON, in four modes. `mode=product`
        (the default when `code` is given) returns one product's stock and price
        as the JSON Smyths' own storefront reads
        (`/api/uk/en-gb/product/product-inventory`), unchanged: `code`, `type`,
        `prices` (`price`, `value`, `wasPrice`, `thenPrice`, `rrpPrice`,
        `discountedPercentage`), `hdSection` (home delivery: `stockStatus`,
        `stockMessage`, `isAvailableForDelivery`, `isPreOrder`,
        `expectedStockDate`, delivery messages), `ccSection` (click & collect:
        the same stock fields plus `storeName`, `deliveryMessage`,
        `storeClosed`), `ageSuitabilities`, `carrierType`, marketing messages
        and decals. `code` takes a product code (`225095`), a product or bundle
        page link or a product-inventory link; one product is one billed
        request. `mode=details&code=` returns the JSON Smyths' product page is
        built from (`/api/uk/en-gb/product`, a bundle's from `/api/uk/en-gb/b`),
        unchanged, one billed request: `name`, `brand`, `ean`, `description`
        (HTML), `webFeatures` (the key features list), the safety warnings
        `euWarning`, `safetyText`, `urgentSafetyTextHeading` and
        `urgentSafetyTextDescription`, `productImages` (the gallery:
        `thumbnail`, `original` and `zoom` per `galleryIndex`, videos as
        `youtubeUrl`), `prices`, `averageRating`, `numberOfReviews`,
        `breadcrumb`, `categoryHierarchy`, `ageSuitabilities`,
        `assemblyRequired` and more; a bundle adds `subProducts`. `url` and
        `breadcrumb` paths are relative to https://www.smythstoys.com/uk/en-gb.
        `mode=search&query=` and `mode=category&category=` find product codes:
        they return `products` (`code`, `name`, `url`, `prices` with the same
        fields, `currency`, `image`, `averageRating`, `productType` - `BUNDLE`
        for bundles - and `decals`) with `totalResults`, `totalPages` and
        `nextPage`, 60 per page; a category also returns its `title`,
        `breadcrumbs` and `subcategories` (`code`, `name`, `count`). Smyths'
        search returns its best 240 matches at most, a category every product it
        holds. Listings collect up to `max_results` from `page` on, billed one
        unit per page.
      operationId: smyths_inventory_marketplace_smyths_inventory_post
      parameters:
        - name: code
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              mode=product and mode=details: product code ('225095'), product or
              bundle page link, or product-inventory link.
            title: Code
          description: >-
            mode=product and mode=details: product code ('225095'), product or
            bundle page link, or product-inventory link.
        - name: bundle
          in: query
          required: false
          schema:
            type: boolean
            description: >-
              mode=product and mode=details: ask for a bundle. A bundle page
              link sets it, and a code Smyths does not answer as a product is
              asked again as a bundle.
            default: false
            title: Bundle
          description: >-
            mode=product and mode=details: ask for a bundle. A bundle page link
            sets it, and a code Smyths does not answer as a product is asked
            again as a bundle.
        - name: mode
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              'product': one product's stock and price (the default when `code`
              is given). 'details': one product's page details - description,
              features, safety warnings, images. 'search': the products matching
              `query` (the default when `query` is given). 'category': the
              products of a category (the default when `category` is given).
            title: Mode
          description: >-
            'product': one product's stock and price (the default when `code` is
            given). 'details': one product's page details - description,
            features, safety warnings, images. 'search': the products matching
            `query` (the default when `query` is given). 'category': the
            products of a category (the default when `category` is given).
        - name: query
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              mode=search: what to search for, e.g. 'lego star wars'. Smyths
              returns its best 240 matches at most - list a category to get
              every product of a range.
            title: Query
          description: >-
            mode=search: what to search for, e.g. 'lego star wars'. Smyths
            returns its best 240 matches at most - list a category to get every
            product of a range.
        - name: category
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              mode=category: a category code ('SM060101') or a category page
              link
              (https://www.smythstoys.com/uk/en-gb/toys/action-figures-and-playsets/c/SM060101).
              The top categories are Toys SM0601, Baby SM0602, Outdoor SM0603
              and Gaming & Tech SM0604; each listing names its subcategories.
            title: Category
          description: >-
            mode=category: a category code ('SM060101') or a category page link
            (https://www.smythstoys.com/uk/en-gb/toys/action-figures-and-playsets/c/SM060101).
            The top categories are Toys SM0601, Baby SM0602, Outdoor SM0603 and
            Gaming & Tech SM0604; each listing names its subcategories.
        - name: sort
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Listing order. search: relevance, bestsellers, price_asc,
              price_desc, rating_desc, newest (the first is the default).
              category: bestsellers, price_asc, price_desc, rating_desc, newest
              (the first is the default).
            title: Sort
          description: >-
            Listing order. search: relevance, bestsellers, price_asc,
            price_desc, rating_desc, newest (the first is the default).
            category: bestsellers, price_asc, price_desc, rating_desc, newest
            (the first is the default).
        - name: page
          in: query
          required: false
          schema:
            type: integer
            description: 1-based listing page to start from (60 products per page).
            default: 1
            title: Page
          description: 1-based listing page to start from (60 products per page).
        - name: max_results
          in: query
          required: false
          schema:
            type: integer
            description: >-
              Products to collect across pages, 1-600. Each page fetched is
              billed one unit.
            default: 60
            title: Max Results
          description: >-
            Products to collect across pages, 1-600. Each page fetched is billed
            one unit.
      responses:
        '200':
          description: >-
            mode=product: Smyths' product-inventory JSON. mode=details: Smyths'
            product page JSON. mode=search and mode=category: JSON with
            `products`; a search with no matches answers 200 with an empty list.
          content:
            application/json:
              schema: {}
        '400':
          description: Invalid parameters, or none of `code`, `query` and `category`.
        '404':
          description: Smyths has no product with that code, or no such category.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '502':
          description: >-
            Smyths refused every attempt or did not answer in time - retry. With
            `X-Origin-Status`, the body is Smyths' own JSON error, which Smyths
            also returns for a product code it does not know.
      security:
        - ScrapeUnblockerKey: []
components:
  schemas:
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    ScrapeUnblockerKey:
      type: apiKey
      in: header
      name: x-scrapeunblocker-key
      description: Your ScrapeUnblocker API key. Apply on every request.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.