使用Rest API创建产品:Magento V2.0

时间:2016-04-05 21:46:50

标签: magento magento-2.0

我一直在尝试使用Rest API for Magento Version 2.0创建产品。

我正在使用Postman来测试其余的api。

网址:http://13.91 / rest / V1 / products

我已将以下标头添加到请求中。 授权:持票人********************** Content-Type:application / json

JSON BODY

{
"sku":"10090-White-XL",
"store_view_code":"",
"attribute_set_code":"ColorSize",
"product_type":"virtual",
"categories":"Menswear/Tops",
"product_websites":"base",
"name":"10090-White-XL",
"description":"<p>Precise Long-Sleeve Shirt in Black, Denim, or White.</p>",
"short_description":"",
"weight":"",
"product_online":1,
"tax_class_name":"Taxable Goods",
"visibility":"Not Visible Individually",
"price":119,
"special_price":"",
"special_price_from_date":"",
"special_price_to_date":"",
"url_key":"10090-white-xl",
"meta_title":"Precise Long-Sleeve Shirt",
"meta_keywords":"Precise Long-Sleeve Shirt",
"meta_description":"Precise Long-Sleeve Shirt <p>Precise Long-Sleeve Shirt in Black, Denim, or White.</p>",
"base_image":"",
"base_image_label":"",
"small_image":"",
"small_image_label":"",
"thumbnail_image":"",
"thumbnail_image_label":"",
"swatch_image":"",
"swatch_image_label":"",
"created_at":"3/23/16, 2:15 PM",
"updated_at":"3/23/16, 2:15 PM",
"new_from_date":"",
"new_to_date":"",
"display_product_options_in":"Block after Info Column",
"map_price":"",
"msrp_price":"",
"map_enabled":"",
"gift_message_available":"",
"custom_design":"",
"custom_design_from":"",
"custom_design_to":"",
"custom_layout_update":"",
"page_layout":"",
"product_options_container":"",
"msrp_display_actual_price_type":"",
"country_of_manufacture":"",
"additional_attributes":"color=White,size=XL",
"qty":null,
"out_of_stock_qty":0,
"use_config_min_qty":1,
"is_qty_decimal":0,
"allow_backorders":0,
"use_config_backorders":1,
"min_cart_qty":1,
"use_config_min_sale_qty":1,
"max_cart_qty":10000,
"use_config_max_sale_qty":1,
"is_in_stock":0,
"notify_on_stock_below":1,
"use_config_notify_stock_qty":1,
"manage_stock":0,
"use_config_manage_stock":0,
"use_config_qty_increments":1,
"qty_increments":0,
"use_config_enable_qty_inc":0,
"enable_qty_increments":0,
"is_decimal_divided":0,
"website_id":1,
"related_skus":"",
"crosssell_skus":"",
"upsell_skus":"",
"additional_images":"",
"additional_image_labels":"",
"hide_from_product_page":"",
"bundle_price_type":"",
"bundle_sku_type":"",
"bundle_price_view":"",
"bundle_weight_type":"",
"bundle_values":"",
"configurable_variations":"",
"configurable_variation_labels":"",
"associated_skus":""

}

我得到的错误是{"message":"%fieldName is a required field.","parameters":{"fieldName":"product"}}

如果有人能告诉我如何添加产品,那就太好了。我检查了所有文件,但找不到答案。

2 个答案:

答案 0 :(得分:3)

我找到了问题的答案。 json结构需要采用以下格式:

{
    "product":{
      "id": 12345,
      "sku": "10090-White-XL",
      "name": "10090-White-XL",
      "attribute_set_id": 9,
      "price": 119,
      "status": 1,
      "visibility": 1,
      "type_id": "virtual",
      "created_at": "2016-04-05 23:04:09",
      "updated_at": "2016-04-05 23:04:09",
      "product_links": [],
      "options": [],
      "tier_prices": [],
      "custom_attributes": [
        {
          "attribute_code": "description",
          "value": "<p>Precise Long-Sleeve Shirt in Black, Denim, or White.</p>"
        },
        {
          "attribute_code": "meta_title",
          "value": "Precise Long-Sleeve Shirt"
        },
        {
          "attribute_code": "meta_keyword",
          "value": "Precise Long-Sleeve Shirt"
        },
        {
          "attribute_code": "meta_description",
          "value": "Precise Long-Sleeve Shirt <p>Precise Long-Sleeve Shirt in Black, Denim, or White.</p>"
        },
        {
          "attribute_code": "color",
          "value": "11"
        },
        {
          "attribute_code": "options_container",
          "value": "container2"
        },
        {
          "attribute_code": "required_options",
          "value": "0"
        },
        {
          "attribute_code": "has_options",
          "value": "0"
        },
        {
          "attribute_code": "url_key",
          "value": "10090-white-xl"
        },
        {
          "attribute_code": "msrp_display_actual_price_type",
          "value": "0"
        },
        {
          "attribute_code": "tax_class_id",
          "value": "2"
        },
        {
          "attribute_code": "size",
          "value": "8"
        }
      ]
    },"saveOptions": true
 }

需要注意的重要事项是json中的产品标签。招摇文件有助于识别它。以下是指向它的链接:http://devdocs.magento.com/swagger/#!/catalogProductRepositoryV1/catalogProductRepositoryV1SavePost

答案 1 :(得分:1)

具有自定义属性的简单产品(例如:备注)。

请注意media_gallery_entries。确保提供有效的base64_encoded_data图像内容和mime类型。

网址:http://domain/index.php/rest/V1/products

方法:POST

HEADER:     应用程序/ JSON     授权:持票人

POST DATA / RAW PAYLOAD:

{
  "product": {
	  "sku": "TESTPRD002",
	  "name": "Women's Running - Pure Boost X Shoes",
	  "attribute_set_id": 4,
	  "price": 84,
	  "status": 1,
	  "visibility": 4,
	  "type_id": "simple",
	  "created_at": "2016-12-16 15:20:55",
	  "updated_at": "2016-12-16 15:20:23",
	  "weight": 2.5,
	  "extension_attributes": {
		"stock_item": {
		  "item_id": 1,
		  "stock_id": 1,
		  "qty": 20,
		  "is_in_stock": true,
		  "is_qty_decimal": false
		}
	  },
	  "product_links": [],
	  "options": [],
	  "media_gallery_entries": [
		{
		  "media_type": "image",
		  "label": "Women's Running - Pure Boost X Shoes",
		  "position": 1,
		  "disabled": false,
		  "types": [
			"image",
			"small_image",
			"thumbnail"
		  ],  
		  "content": {
			  "base64_encoded_data": "<ENCODED IMAGE DATA>",
			  "type": "image/jpeg",
			  "name": "TESTPRD002-01.jpg"
			}
		}
	  ],
	  "tier_prices": [],
	  "custom_attributes": [
		{
		  "attribute_code": "description",
		  "value": "<p>Lightweight and sleek, these women's running shoes are fueled by boost™ energy. The low-profile runners blend an energy-returning boost™ midsole with a STRETCHWEB outsole for a cushioned ride with terrific ground-feel. They feature a breathable mesh upper with a sock-like fit that offers all-around support. With a full boost™ midsole that keeps every stride charged with light, fast energy, the shoe has an upper that hovers over a free-floating arch.</p>"
		},
		{
		  "attribute_code": "short_description",
		  "value": "<p>PURE BOOST X SHOES</p><p>NATURAL RUNNING SHOES WITH ARCH SUPPORT.</p>"
		},
		{
		  "attribute_code": "meta_title",
		  "value": "PURE BOOST X SHOES"
		},
		{
		  "attribute_code": "meta_keyword",
		  "value": "boost X, running, shoes, adidas"
		},
		{
		  "attribute_code": "meta_description",
		  "value": "NATURAL RUNNING SHOES WITH ARCH SUPPORT."
		},
		{
		  "attribute_code": "category_ids",
		  "value": [
			"2", "3"
		  ]
		},
		{
		  "attribute_code": "url_key",
		  "value": "womens-running-pure-boost-x-shoes"
		},
		{
		  "attribute_code": "tax_class_id",
		  "value": "1"
		},
		{
		  "attribute_code": "remarks",
		  "value": "Lorem ipsum.."
		}
	  ]
  },
  "saveOptions": true
}