欢迎来到Shopify API弃用的另一个版本,在这里我们深入了解所有受支持版本即将生效的突破性更改。在这篇文章中,我们将回顾2020年1月发布的突破性变化,这将成为2020年10月1日支持的最古老的Shopify API版本。
将本文作为指南,为即将到来的变化做好准备,这样你的应用就能在黑色星期五/网络星期一(BFCM)之前继续正常运行。
如果你想看这些变化的现场解释和演示,你可以看看下面的视频:
快速回顾一下版本控制
在我们深入研究您所面临的变化之前,让我们回顾一下如何Shopify的API版本控制的工作原理。
1.我们每季度发布一个版本
通常,这些发布发生在1月1日、4月1日、7月2日和10月1日左右。版本以年-月格式命名(例如2020-01),确保始终容易识别版本变得稳定的时间,以及比较多个版本的时间线。
2.应用程序通过在请求URL中指定API的特定版本来发出请求
当Shopify API不断发展时,应用程序可以构建在一个稳定的版本上,以确保API契约保持不变。请记住,这意味着在您的目标版本之后发布的任何功能将无法访问,直到您更新您的请求URL。
3.我们不断向商家发布新功能
为了在不影响最新稳定api的情况下发布特性,我们使用了候选版本。候选发行版只是下一个API版本,并且可以针对使用相同的年-月格式的请求。在候选版本中,您将找到刚刚发布的最新特性集。然而,由于它是不断发展的,你应该避免在应用的日常使用API时使用候选版本。
为了获得稳定性和最新功能的好处,我们建议将应用程序的日常请求保持在稳定版本上,只将处理新发布功能的特定调用移动到候选版本。
4.不要求特定版本的应用程序将提供最旧的支持版本
这允许现有的应用程序在我们发布版本控制时继续运行,而不必更新到新的url。这个概念也适用于显式调用不再支持的版本的应用程序。
例如,如果您的应用程序在不受支持后继续请求2019-10,则将为您提供最旧的支持版本2020-01。
虽然每个应用程序都将受益于这种机制,防止在版本切换后出现所有请求错误,但我们建议有意针对最新版本。
5.版本支持一年
取消对版本的支持使我们能够保持敏捷,并做出必要的更改,以便长期为我们的商家和Shopify平台提供最好的服务。虽然版本支持一年,但这意味着应用程序实际上只有一年九个月在旧的行为不再可用之前,采用这些新更改并利用新功能。
有了这个复习,让我们来回顾一下2020年10月1日你需要准备的关键信息。
你可能还喜欢:Shopify应用程序开发的基本资源列表.
10月1日发生了什么
2020年10月1日,我们的api将发生以下变化:
- 2020-10版本将变得稳定,并准备好普遍使用
- 2019-10版本将不受支持
- 由于2020-01年的变化而被弃用的请求将导致您的应用被标记。为了尽量减少商家的影响,Shopify将从Shopify App Store中删除标记应用,并阻止新的安装。此外,我们可能会通知商家,您的应用程序不再支持。
不久之后,我们自行决定:
- 没有指定API版本的请求将被服务于2020 - 01年的版本.
- 2019-10版本的请求将不再收到该版本。相反,这些请求将转到2020 - 01.
- 设定为2019-10年的webhook将以同样的方式向前推进。
最重要的是,2020-01 API版本将成为默认版本,包括破坏性API更改。如果你的应用程序发出的请求可能会在2020-01年中断,你需要采取行动,在2020年10月1日之前迁移这些请求.如果不这样做,将导致请求失败和应用程序崩溃。
现在,让我们深入了解2020-01赛季引入的每一个突破性变化。
为Shopify商家构建应用程序
无论您是想为Shopify App Store构建应用程序,提供定制应用程序开发服务,还是正在寻找增加用户基础的方法,Shopify合作伙伴计划都将为您的成功奠定基础。免费加入并访问教育资源、开发人员预览环境和经常性收入分享机会。
报名即将到来的重大变化
以下是2020-01中引入的突破性变化,2020-01将于10月1日成为Shopify支持的最老版本。
1.智能收集从收集API中删除
重新设计了Collections API,以提供更有效和性能更高的端点。作为过渡的一部分,collections API不再包含“Smart collections”。这些智能集合已经转移到新的集合API,可以通过REST和GraphQL使用。
总结:使用新的Collections API来满足您的所有集合需求。这在处理智能集合时尤为重要。如果您试图通过collections API获取Smart Collection信息,您将得到不正确的结果或404错误。
欲知详情,请浏览开发人员的变更.
2.GraphQL输入对象限制为250项
在所有连接中,我们已经限制了最大数目(或者是第一:num
或最后:num
),返回结果的数值为250。此更改只是将此限制扩展到输入参数。
总结:您不能再向API传递无限长的输入。把你的请求分成更小、更易于管理的大小。
欲知详情,请浏览开发人员的变更.
你可能还喜欢:使用GraphQL更快地检索Shopify元字段.
准备好迎接2020年10月1日吧
我们认识到,我们给平台带来的每一次改变都是我们要求开发者和合作伙伴付出的努力。有了版本控制,我们希望这个过程更容易预测,更少混乱。以下资源可以帮助您掌握Shopify平台的变化:
- API运行状况报告中的每个应用运行状况报告合作伙伴仪表板它展示了会对您产生影响的API更改
- 电子邮件确保你的开发者联系邮箱是最新的,这样我们就可以通知你即将发生的变化
- 弃用头:在你的应用程序中
X-Shopify-API-Deprecated-Reason
头被添加到已弃用且将在9个月内不支持的请求中 - 开发人员的变更:随时了解Shopify api和其他开发者产品的最新变化
或者,订阅我们每月的Shopify开发者和合作伙伴通讯。
保持了解
订阅接收What's New with Shopify,我们的每月电子邮件提供Shopify的最新产品新闻。
今年10月,通过迁移到2020-01或更高版本,确保您的应用程序已经为BFCM准备好了这些性能增强。
请查看2020-10版本说明全套新功能,或您的合作伙伴仪表板看看哪些变化对你有影响。