magento 2 rest api产品过滤器

时间:2017-05-05 11:43:24

标签: rest api magento2

我正在研究magento 2 api。我需要基于以下过滤器的产品

  1. 商店ID
  2. 按产品名称搜索
  3. 按姓名缩短
  4. 类别ID
  5. 添加限制
  6. 我试过这个api但是没有可用的选项

    的index.php /休息/ V1 /类别/ {ID} /产品

    请有人建议如何存档。

    由于

2 个答案:

答案 0 :(得分:4)

您正在寻找(GET)API /rest/V1/products

  1. 商店应自动检测商店ID,因为您可以在之前传递商店代码。如果您的商店的代码为test,则API将以GET /rest/test/V1/products/[...]开头。
  2. 您可以使用like条件类型。例如:"样品"在他们的名字中:?searchCriteria[filter_groups][0][filters][0][field]=name &searchCriteria[filter_groups][0][filters][0][value]=%sample% &searchCriteria[filter_groups][0][filters][0][condition_type]=like
  3. 您正在寻找sortOrders。例:searchCriteria[sortOrders][0][field]=name。您甚至可以使用searchCriteria[sortOrders][0][direction]=DESC添加排序方向,例如DESC。
  4. 使用category_id字段和eq条件类型。例如:如果您需要类别10的产品:searchCriteria[filter_groups][0][filters][0][field]=category_id& searchCriteria[filter_groups][0][filters][0][value]=10& searchCriteria[filter_groups][0][filters][0][condition_type]=eq
  5. 使用searchCriteria[pageSize]。例如:从40日开始的20个产品,相当于SQL LIMIT 20 OFFSET 40&searchCriteria[pageSize]=20&searchCriteria[currentPage]=3
  6. 当然,您可以使用过滤器执行AND和OR操作。

答案 1 :(得分:0)

[
    "filter_groups": [
        {
            "filters": [
                {
                    "field": "type_id",
                    "value": "simple",
                    "condition_type": "eq"
                }
            ]
        },
        {
            "filters": [
                {
                    "field": "category_id",
                    "value": "611",
                    "condition_type": "eq"
                }
            ]
        }
    ],
    "page_size": 100,
    "current_page": 1,
    "sort_orders": [
        {
            "field": "name",
            "direction": "ASC"
        }
    ]
]