Skip to content
Generated from the production schema (commit fbf0d6e).

Product

Kind: Object

Field Type Description
id ID!
name String!
slug String!
description String!
brand String! Display brand name. A product linked to a Brand shows that brand’s own name; a product with no linked Brand shows whatever text was given.
brandProfile Brand Linked Brand entity + its ‘From the brand’ module (null if unbranded).
status ProductStatus!
hsnCode String!
gstRate Int! GST percent included in prices (MRP convention).
countryOfOrigin String! Consumer Protection Rules: country of origin.
manufacturerName String!
mrp Money!
price Money!
rating Float Average rating over visible reviews (null if none).
reviewCount Int! Number of visible reviews.
onSale Boolean! True when an active catalog sale covers this product.
salePrice Money Price after the best active catalog sale (null when not on sale).
discountPercent Int! Percent off MRP for the current effective price (uses the sale price when on sale, else the everyday selling price). 0 when price == MRP.
activeSaleLabel String Name of the active catalog sale giving the best price (null if none).
activeSaleEndsAt DateTime When the best active sale ends, for a countdown (null if none / open-ended).
emiFrom Money Lowest indicative monthly EMI for this product’s price (null if no financing plan applies). EMI never changes the price — display only.
emiOptions [EmiPlan!]! All financing plans available for this product’s price.
lengthCm Float
widthCm Float
heightCm Float
weightKg Float
assemblyRequired Boolean!
assemblyFee Money! Flat optional assembly service fee at checkout.
warrantyMonths Int!
nonReturnable Boolean! Structurally non-returnable (hygiene items; return-policy §3).
madeToOrderAllowed Boolean! Out-of-stock quantities stay orderable, built on demand with explicit consent to the leadTimeDaysMin–leadTimeDaysMax window.
leadTimeDaysMin Int!
leadTimeDaysMax Int!
tags [String!]! Room / use-case tags.
segmentVisibility [CustomerSegment!]!
seoTitle String!
seoDescription String!
publishedAt DateTime
createdAt DateTime!
productType ProductType!
category Category
variants [ProductVariant!]!
media [ProductMedia!]! Product gallery (images + videos). Pass variantId to get that variant’s media plus the shared, un-scoped media; omit for all media.
Arguments: variantId: ID = null
contentJson JSON A+ rich content blocks (EditorJS-style JSON), if authored.
contentModules [AplusModule!]! Typed A+ (‘Product Description’) modules — image+text, grid, banner, comparison, video, text — in display order.
badges [String!]! Merchandising badges, e.g. [‘BEST_SELLER’, ‘NEW’].
socialProofLabel String Bucketed social-proof label like ‘100+ bought recently’ (null if too few).
featureBullets [String!]! Ordered ‘About this item’ highlight bullets.
attributeValues [AttributeValue!]!
inStock Boolean! True when any variant is in stock in a warehouse that sells online. Stock on a retailer’s floor or in transit does not count.
metadata [MetadataItem!]!