I added custom field Image and Qty in Product Customizable Options.
I add those filed to Product Option Value in Product Rest API. So how can it possible.
Method: GET
API Request URL: http://localhost/magentosample231/rest/V1/products/24-MB01
Reposne:
{
"id": 1,
"sku": "24-MB01",
"name": "Joust Duffle Bag",
"attribute_set_id": 15,
"price": 34,
"status": 1,
"visibility": 4,
"type_id": "simple",
"created_at": "2019-08-30 07:14:51",
"updated_at": "2019-10-16 11:56:24",
"extension_attributes": {
"website_ids": [
1
],
"category_links": [
{
"position": 0,
"category_id": "3"
},
{
"position": 0,
"category_id": "4"
}
],
"stock_item": {
"item_id": 1,
"product_id": 1,
"stock_id": 1,
"qty": 100,
"is_in_stock": true,
"is_qty_decimal": false,
"show_default_notification_message": false,
"use_config_min_qty": true,
"min_qty": 0,
"use_config_min_sale_qty": 1,
"min_sale_qty": 1,
"use_config_max_sale_qty": true,
"max_sale_qty": 10000,
"use_config_backorders": true,
"backorders": 0,
"use_config_notify_stock_qty": true,
"notify_stock_qty": 1,
"use_config_qty_increments": true,
"qty_increments": 0,
"use_config_enable_qty_inc": true,
"enable_qty_increments": false,
"use_config_manage_stock": true,
"manage_stock": true,
"low_stock_date": null,
"is_decimal_divided": false,
"stock_status_changed_auto": 0
}
},
"product_links": [
{
"sku": "24-MB01",
"link_type": "crosssell",
"linked_product_sku": "24-WG086",
"linked_product_type": "simple",
"position": 1
},
{
"sku": "24-MB01",
"link_type": "crosssell",
"linked_product_sku": "24-WG083-blue",
"linked_product_type": "simple",
"position": 2
},
{
"sku": "24-MB01",
"link_type": "crosssell",
"linked_product_sku": "24-UG01",
"linked_product_type": "simple",
"position": 3
},
{
"sku": "24-MB01",
"link_type": "crosssell",
"linked_product_sku": "24-WG085_Group",
"linked_product_type": "grouped",
"position": 4
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-MB02",
"linked_product_type": "simple",
"position": 1
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-MB03",
"linked_product_type": "simple",
"position": 2
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-MB05",
"linked_product_type": "simple",
"position": 3
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-MB06",
"linked_product_type": "simple",
"position": 4
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-UB02",
"linked_product_type": "simple",
"position": 5
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-WB03",
"linked_product_type": "simple",
"position": 6
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-WB04",
"linked_product_type": "simple",
"position": 7
},
{
"sku": "24-MB01",
"link_type": "upsell",
"linked_product_sku": "24-WB07",
"linked_product_type": "simple",
"position": 8
}
],
"options": [
{
"product_sku": "24-MB01",
"option_id": 1,
"title": "Test",
"type": "drop_down",
"sort_order": 1,
"is_require": true,
"max_characters": 0,
"image_size_x": 0,
"image_size_y": 0,
"values": [
{
"title": "Test1",
"sort_order": 1,
"price": 10,
"price_type": "fixed",
"sku": "24-MB01",
"option_type_id": 1
},
{
"title": "Test2",
"sort_order": 2,
"price": 12,
"price_type": "fixed",
"sku": "24-MB01",
"option_type_id": 2
}
]
}
],
"media_gallery_entries": [
{
"id": 1,
"media_type": "image",
"label": "Image",
"position": 1,
"disabled": false,
"types": [
"image",
"small_image",
"thumbnail"
],
"file": "/m/b/mb01-blue-0.jpg"
}
],
"tier_prices": [],
"custom_attributes": [
{
"attribute_code": "activity",
"value": []
},
{
"attribute_code": "style_bags",
"value": []
},
{
"attribute_code": "material",
"value": []
},
{
"attribute_code": "color",
"value": [
{
"Title": "Color",
"label": "Black",
"code": "49",
"Visible on Storefront": "1"
}
]
},
{
"attribute_code": "strap_bags",
"value": []
},
{
"attribute_code": "features_bags",
"value": []
},
{
"attribute_code": "image",
"value": "/m/b/mb01-blue-0.jpg"
},
{
"attribute_code": "small_image",
"value": "/m/b/mb01-blue-0.jpg"
},
{
"attribute_code": "thumbnail",
"value": "/m/b/mb01-blue-0.jpg"
},
{
"attribute_code": "options_container",
"value": "container1"
},
{
"attribute_code": "msrp_display_actual_price_type",
"value": "0"
},
{
"attribute_code": "url_key",
"value": "joust-duffle-bag"
},
{
"attribute_code": "gift_message_available",
"value": "0"
},
{
"attribute_code": "required_options",
"value": "1"
},
{
"attribute_code": "has_options",
"value": "1"
},
{
"attribute_code": "image_label",
"value": "Image"
},
{
"attribute_code": "small_image_label",
"value": "Image"
},
{
"attribute_code": "thumbnail_label",
"value": "Image"
},
{
"attribute_code": "tax_class_id",
"value": "0"
},
{
"attribute_code": "category_ids",
"value": [
"3",
"4"
]
},
{
"attribute_code": "description",
"value": "<p>The sporty Joust Duffle Bag can't be beat - not in the gym, not on the luggage carousel, not anywhere. Big enough to haul a basketball or soccer ball and some sneakers with plenty of room to spare, it's ideal for athletes with places to go.<p>\r\n<ul>\r\n<li>Dual top handles.</li>\r\n<li>Adjustable shoulder strap.</li>\r\n<li>Full-length zipper.</li>\r\n<li>L 29\" x W 13\" x H 11\".</li>\r\n</ul>"
},
{
"attribute_code": "eco_collection",
"value": "0"
},
{
"attribute_code": "performance_fabric",
"value": "0"
},
{
"attribute_code": "erin_recommends",
"value": "0"
},
{
"attribute_code": "new",
"value": "0"
},
{
"attribute_code": "sale",
"value": "0"
}
]
}
See the reposne there is a "options"
"options": [
{
"product_sku": "24-MB01",
"option_id": 1,
"title": "Test",
"type": "drop_down",
"sort_order": 1,
"is_require": true,
"max_characters": 0,
"image_size_x": 0,
"image_size_y": 0,
"values": [
{
"title": "Test1",
"sort_order": 1,
"price": 10,
"price_type": "fixed",
"sku": "24-MB01",
"option_type_id": 1
},
{
"title": "Test2",
"sort_order": 2,
"price": 12,
"price_type": "fixed",
"sku": "24-MB01",
"option_type_id": 2
}
]
}
],
I have to add my custom added options field Image
and Qty
in to the Options
Value
like same as below.
"options": [
{
"product_sku": "24-MB01",
"option_id": 1,
"title": "Test",
"type": "drop_down",
"sort_order": 1,
"is_require": true,
"max_characters": 0,
"image_size_x": 0,
"image_size_y": 0,
"values": [
{
"title": "Test1",
"sort_order": 1,
"price": 10,
"price_type": "fixed",
"sku": "24-MB01",
"option_type_id": 1,
"image": "test.jpg",
"qty": 2
},
{
"title": "Test2",
"sort_order": 2,
"price": 12,
"price_type": "fixed",
"sku": "24-MB01",
"option_type_id": 2,
"image": "info.jpg",
"qty": 1
}
]
}
],
Any help would be appreciated. Thanks!