# Grouped Product

Grouped product (product set) operations

## Retrieve grouped product detail

> Returns detail information for a grouped product, including all member products and combined pricing.\
> \
> \*\*Grouped Products:\*\*\
> A grouped product represents a collection of related products sold together, such as:\
> \* Furniture sets (table + chairs)\
> \* Outfit combinations (shirt + pants + accessories)\
> \* Kit products (main product + accessories)\
> \
> \*\*Response Includes:\*\*\
> \* Main grouped product information\
> \* List of all member products with individual details\
> \* Combined total price and retail price for the group\
> \* Stock availability across all group members\
> \
> \*\*Pricing:\*\*\
> \* \`group\_products\_total\_price\`: Sum of all member product prices\
> \* \`group\_products\_total\_retail\_price\`: Sum of all member retail prices

```json
{"openapi":"3.1.0","info":{"title":"Product API - Product Catalog & Detail Information","version":"1.0.0"},"tags":[{"name":"Grouped Product","description":"Grouped product (product set) operations"}],"servers":[{"description":"Commerce API Server","url":"https://{commerce_url}","variables":{"commerce_url":{"default":"sandbox.akinon.com","description":"Commerce server URL (e.g., your-store.akinon.com)"}}}],"paths":{"/group-product/{product_id}/":{"get":{"tags":["Grouped Product"],"operationId":"getGroupedProductDetail","summary":"Retrieve grouped product detail","description":"Returns detail information for a grouped product, including all member products and combined pricing.\n\n**Grouped Products:**\nA grouped product represents a collection of related products sold together, such as:\n* Furniture sets (table + chairs)\n* Outfit combinations (shirt + pants + accessories)\n* Kit products (main product + accessories)\n\n**Response Includes:**\n* Main grouped product information\n* List of all member products with individual details\n* Combined total price and retail price for the group\n* Stock availability across all group members\n\n**Pricing:**\n* `group_products_total_price`: Sum of all member product prices\n* `group_products_total_retail_price`: Sum of all member retail prices","parameters":[{"name":"product_id","in":"path","required":true,"description":"Unique identifier of the grouped product.\n\nMust be a product with type \"grouped\".","schema":{"type":"integer"}}],"responses":{"200":{"description":"Grouped product detail retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupedProductDetailResponse"}}}},"404":{"description":"Grouped product not found.\n\nOccurs when:\n* No product exists with the specified ID\n* Product exists but is not of type \"grouped\"\n* Product is marked as end-of-life"}}}}},"components":{"schemas":{"GroupedProductDetailResponse":{"type":"object","description":"Response for grouped product detail page.\n\nContains the main grouped product and all its member products.","required":["in_stock","product","group_products","group_products_total_price","group_products_total_retail_price"],"properties":{"in_stock":{"type":"boolean","description":"Aggregate stock status across all group members.\n\nTrue if at least one member product is in stock."},"product":{"$ref":"#/components/schemas/Product"},"group_products":{"type":"array","description":"List of products included in this group.\n\nEach item may include an `initial_quantity` indicating default quantity.","items":{"$ref":"#/components/schemas/GroupProduct"}},"group_products_total_price":{"type":"string","description":"Sum of all member product prices.\n\nCalculated as: sum(product.price × initial_quantity) for all members."},"group_products_total_retail_price":{"type":"string","description":"Sum of all member retail prices.\n\nUseful for showing total savings on the group."}}},"Product":{"type":"object","description":"Core product information including pricing, stock, and attributes.","required":["pk","name","sku","base_code","price","in_stock","product_type"],"properties":{"pk":{"type":"integer","description":"Unique product identifier"},"name":{"type":"string","description":"Display name of the product.\n\nMay be translated based on active language settings."},"sku":{"type":"string","description":"Stock Keeping Unit - unique product code for inventory management."},"base_code":{"type":"string","description":"Base product code shared across variants.\n\nAll size/color variants of the same product share this code."},"attributes":{"type":"object","description":"Product attributes as key-value pairs.\n\nContains both variant-defining attributes (size, color) and descriptive attributes (material, weight).","additionalProperties":true},"attribute_set":{"type":"integer","description":"ID of the attribute set that defines this product's attribute schema."},"attributes_kwargs":{"type":"object","description":"Extended attribute metadata including labels and display values.\n\nProvides translated attribute names and formatted values for display.","additionalProperties":true},"extra_attributes":{"type":["object","null"],"description":"Additional custom attributes not part of the standard attribute set.","additionalProperties":true},"productimage_set":{"type":"array","description":"Product images in multiple sizes and formats.","items":{"$ref":"#/components/schemas/ProductImage"}},"productvideo_set":{"type":"array","description":"Product videos for enhanced product presentation.","items":{"$ref":"#/components/schemas/ProductVideo"}},"price":{"type":"string","description":"Current selling price as a decimal string.\n\nFormat: \"123.45\" (two decimal places)"},"retail_price":{"type":"string","description":"Original retail/list price before discounts.\n\nCompare with `price` to calculate discount percentage."},"currency_type":{"type":"string","description":"Currency code for price values.\n\nCommon values: \"try\" (Turkish Lira), \"usd\", \"eur\""},"price_type":{"type":"string","description":"Price category or tier identifier."},"tax_rate":{"type":"string","description":"Applicable tax rate as a decimal percentage.\n\nExample: \"18.00\" represents 18% tax"},"in_stock":{"type":"boolean","description":"Stock availability status for this specific product/variant."},"stock":{"type":"integer","description":"Available stock quantity.\n\nMay be from default stock or inventory-specific stock list."},"unit_type":{"type":"string","description":"Unit of measurement for stock.\n\nCommon values: \"quantity\", \"kg\", \"meter\""},"product_type":{"type":"string","description":"Product classification type.\n\n| Value | Code | Description |\n|-------|------|-------------|\n| 0 | simple | Standard product with optional variants |\n| 1 | product_meta | Parent product that groups variants |\n| 2 | bundle | Configurable product with chapters |\n| 3 | grouped | Collection of related products sold together |\n| 4 | miscellaneous | Special product (services, fees) |\n| 5 | offer | Seller-specific product offer |","enum":["0","1","2","3","4","5"]},"absolute_url":{"type":"string","format":"uri","description":"Canonical URL for this product.\n\nUse this for SEO-friendly product links."},"form_schema":{"type":"array","description":"Form field definitions for products requiring additional input.\n\nUsed for personalized products, custom engravings, etc.","items":{"$ref":"#/components/schemas/AttributeConfigForm"}},"is_ready_to_basket":{"type":"boolean","description":"Indicates if the product can be directly added to basket.\n\nFalse when variant selection or additional input is required."},"data_source":{"oneOf":[{"$ref":"#/components/schemas/DataSource"},{"type":"null"}],"description":"Seller/data source information for marketplace products."},"basket_offers":{"type":"array","description":"Promotional offers applicable when this product is in the basket.","items":{"type":"object"}},"is_listable":{"type":"boolean","description":"Indicates if the product should appear in product listings.\n\nNon-listable products may only be accessible via direct URL."},"listing_code":{"type":"string","description":"Code used for product listing grouping."}}},"ProductImage":{"type":"object","description":"Product image with multiple size variants","properties":{"pk":{"type":"integer","description":"Image identifier"},"status":{"type":"string","description":"Image processing status"},"image":{"type":"string","format":"uri","description":"Original image URL"},"order":{"type":"integer","description":"Display order (lower numbers appear first)"},"thumbnail":{"type":"string","format":"uri","description":"Thumbnail size image URL"},"mid_thumbnail":{"type":"string","format":"uri","description":"Medium thumbnail URL"},"detailed_thumbnail":{"type":"string","format":"uri","description":"Detailed/larger thumbnail URL"}}},"ProductVideo":{"type":"object","description":"Product video information","properties":{"pk":{"type":"integer","description":"Video identifier"},"video_type":{"type":"string","description":"Video hosting platform type.\n\nCommon values: \"youtube\", \"vimeo\", \"self_hosted\""},"video":{"type":"string","format":"uri","description":"Video URL or embed code"}}},"AttributeConfigForm":{"type":"object","description":"Form field configuration for product customization inputs.","properties":{"key":{"type":"string","description":"Field identifier"},"label":{"type":"string","description":"Field display label"},"type":{"type":"string","description":"Input type.\n\nCommon values: \"text\", \"textarea\", \"select\", \"file\""},"required":{"type":"boolean","description":"Whether the field is required"},"options":{"type":"array","items":{"type":"object"},"description":"Available options for select fields"}}},"DataSource":{"type":"object","description":"Seller or data source information.","properties":{"pk":{"type":"integer","description":"Data source identifier"},"name":{"type":"string","description":"Internal name"},"title":{"type":"string","description":"Display title"},"slug":{"type":"string","description":"URL-friendly identifier"}}},"GroupProduct":{"allOf":[{"$ref":"#/components/schemas/Product"},{"type":"object","properties":{"initial_quantity":{"type":"integer","description":"Default quantity of this product in the group.","default":1}}}]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://apidocs.akinon.com/commerce-openapis/products/grouped-product.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
