Create the third simple product using cURL
curl --location '{{your.url.here}}/rest/default/V1/products' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{Your Bearer Token}}' \
--header 'Cookie: PHPSESSID=a42da0096288718c9556f77549c6305f; private_content_version=564dde2976849891583a9a649073f01e' \
--data '{
"product": {
"sku": "product-sku-three",
"name": "Simple product three",
"attribute_set_id": 4,
"price": 3.33,
"type_id": "simple"
}
}
Create an empty grouped product using cURL
curl --location '{{your.url.here}}/rest/default/V1/products' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{Your Bearer Token}}' \
--header 'Cookie: PHPSESSID=28a020734488eef2600f8d5c7f302b53; private_content_version=564dde2976849891583a9a649073f01e' \
--data '{
"product":{
"sku":"my-new-grouped-product",
"name":"This is my New Grouped Product",
"attribute_set_id":4,
"type_id":"grouped",
"visibility":4
}
}
'
Add the first and second simple products to the grouped product
curl --location '{{your.url.here}}/rest/default/V1/products/my-new-grouped-product/links' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{Your Bearer Token}}' \
--header 'Cookie: PHPSESSID=28a020734488eef2600f8d5c7f302b53; private_content_version=564dde2976849891583a9a649073f01e' \
--data '{
"items":[
{
"sku":"my-new-grouped-product",
"link_type":"associated",
"linked_product_sku":"product-sku-one",
"linked_product_type":"simple",
"position":1,
"extension_attributes":{
"qty":1
}
},
{
"sku":"my-new-grouped-product",
"link_type":"associated",
"linked_product_sku":"product-sku-two",
"linked_product_type":"simple",
"position":2,
"extension_attributes":{
"qty":1
}
}
]
}
'
Add the third simple product to the existing grouped product
Include the appropriate position number (anything except 1
or 2
), which are used for the first two products originally associated to the grouped product. For this example, the position is 4
.
curl --location --request PUT '{{your.url.here}}/rest/default/V1/products/my-new-grouped-product/links' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{Your Bearer Token}}' \
--header 'Cookie: PHPSESSID=9e61396705e9c17423eca2bdf2deefb2' \
--data '{
"entity":{
"sku":"my-new-grouped-product",
"link_type":"associated",
"linked_product_sku":"product-sku-three",
"linked_product_type":"simple",
"position":4,
"extension_attributes":{
"qty":1
}
}
}
'
Delete a simple product from a grouped product
To delete a simple product from a grouped product, use: DELETE /V1/products/{sku}/links/{type}/{linkedProductSku}
.
To discover what to use as {type}
, use xdebug to capture the request and evaluate the $linkTypes: related
, crosssell
, uupsell
, and associated
.
When linking the simple products to the grouped product, the payload contained a few sections similar to:
{
"sku":"my-new-grouped-product",
"link_type":"associated",
"linked_product_sku":"product-sku-two",
"linked_product_type":"simple",
"position":2,
"extension_attributes":{
"qty":1
}
}
In the payload, the link_type
value associated
provides the {type}
value required in the DELETE request. The request URL will be similar to /V1/products/my-new-grouped-product/links/associated/product-sku-three
.
See the cURL request to delete the simple product with the product-sku-three
SKU from the grouped product with the my-new-grouped-product
SKU:
curl --location --request DELETE '{{your.url.here}}rest/default/V1/products/my-new-grouped-product/links/associated/product-sku-three' \
--header 'Authorization: Bearer {{Your Bearer Token}}' \
--header 'Cookie: PHPSESSID=9e61396705e9c17423eca2bdf2deefb2'
Get a grouped product using cURL
curl --location '{{your.url.here}}rest/default/V1/products/some-grouped-product-sku' \
--header 'Authorization: Bearer {{Your Bearer Token}}' \
--header 'Cookie: private_content_version=3b797a6cc3c5c71f2193109fb9838b12'
Additional resources
Commerce
- Commerce Tutorials
- Adobe Commerce Cloud
- Getting Started
- Global Reference Architecture
- Help and support
- Edge Delivery Services
- Webinars and events
- GraphQL and REST
- Adobe Developer App Builder
- Store Administration
- Customer Management
- Catalog Management
- Content Management
- Marketing Tools
- Orders and Fulfillment
- B2B for Adobe Commerce
- Tools and External services
- Commerce Intelligence
- Commerce Upgrades
- Back-end Development
- Native Front-end Luma Development
- Headless Architecture