通过API从多个集合列出Shopify产品

时间:2017-01-16 17:51:04

标签: shopify

我知道如何使用APi

列出特定自定义集合中的产品
...products.json?collection_id=xxxx

如何列出两个或三个特定馆藏的产品?如果有一种方法可以告诉API列出仅在这些集合中找到的产品,i。即只收集A和收藏B?

1 个答案:

答案 0 :(得分:0)

这是通过Collect API完成的。产品不与自定义集合直接关联 - 它们与收集相关联,然后收集与自定义集合相关联。因此,使用Collect API,您将获得与自定义集合关联的所有集合,然后检索与这些集合关联的所有产品。您甚至可以在一个请求中获得这些产品(如下所示;参见陷阱)。

请参阅文档:

Getting all Collects for a certain Custom Collection

Getting a list of specific products

实施例

(由于我们只关注从收集中获取产品ID,因此我们可以将product_id传递给fields参数,以加快响应时间。

GET /admin/collects.json?collection_id=841564295&fields=product_id

响应:

{
  "collects": [
    {
      "product_id": 921728736,
    },
    {
      "product_id": 632910392,
    }
  ]
}

GET /admin/products.json?ids=921728736,632910392

响应:

{
    "products": [ ... ]
}

陷阱:

对于Collect和Product端点,每个respone的默认限制为50个项目,因此您需要处理分页。您可以使用limit=250将此50限制提高到250,这将减少您的总请求数。

虽然使用ids参数指定的ID数量没有限制,但Product端点仍将遵循此默认值或指定的limit。因此,最好将您的ID分组为250个,将它们用逗号分隔为ids的值,然后记住添加limit=250参数以避免必须分页。< / p>