大数跨境

采购订单读取 API

采购订单读取 API Shopify电商独立站
2026-09-17
3
导读:从 GraphQL Admin API 2026-10 及更高版本开始,您可以通过 Inventory Purchase Order 和 Inventory Purchase Orders 查询读取采

您现在可以通过 GraphQL Admin API 2026-10 及更高版本中的 inventoryPurchaseOrder 和 inventoryPurchaseOrders 查询来读取采购订单。此次公开发布使应用能够在未将商店加入物理库存功能预览的情况下,读取采购订单详情、行项目、供应商快照以及关联的库存调拨记录。

使用预览版 read_inventory 的应用必须获取采购订单读取权限。

变更内容

此前,公共应用仅通过不稳定的预览功能读取采购订单。2026-10 GraphQL Admin API 现在提供以下功能:

  • inventoryPurchaseOrder 用于按 ID 检索采购订单,inventoryPurchaseOrders 用于检索分页列表。
  • 采购订单详情和行项目,包括在 origin.supplierName 中捕获的供应商名称。
  • 一个分页的 transfers 连接,返回关联的 InventoryTransfer 对象。读取这些对象还需要 read_inventory_transfers 权限。

InventoryPurchaseOrder.referenceName 不属于公开的 2026-10 API。如果您的预览查询选择了它,请在迁移到 2026-10 之前移除该选择。

此为只读版本发布。不包含采购订单的修改操作。现有用户权限继续适用。

受影响对象

  • 采用采购订单读取功能的应用:请求 read_inventory_purchase_orders。这些读取操作不需要 API 测试版访问权限或商店预览版注册。
  • 现有的预览版集成:仅凭 read_inventory 不再授权采购订单读取,包括在 unstable 上的读取。在依赖已发布的行为之前,请获取 read_inventory_purchase_orders。如果您的应用仍因其他库存资源需要 read_inventory,请保留它。
  • 已获得采购订单访问权限的应用:如果安装时已拥有包含读取权限的 read_inventory_purchase_orders 或 write_inventory_purchase_orders,则无需申请额外的采购订单范围。请根据已发布的字段名称和类型检查您的查询。

2026-07 及更早版本无法获得这些公开查询。不读取采购订单的应用无需进行更改。

操作步骤

  1. 更新应用请求的范围。 添加 read_inventory_purchase_orders,如果需要 transfers 连接,请添加 read_inventory_transfers。保留应用仍需的其他任何范围。
  2. 获取新的授权。 部署配置更改并完成现有安装的申请范围审批流程。仅更改请求的范围不会授予访问权限。请通过 currentAppInstallation.accessScopes 验证安装获得的授权范围。
  3. 更新并测试您的查询。 针对 /admin/api/2026-10/graphql.json 进行操作,并使用下面显示的供应商和调拨字段。如果您在 2026 年 10 月 1 日之前进行集成,2026-10 是候选发布版本:请将其用于测试而非生产环境。
  4. 在开发商店上检查结果。 使用具有采购订单和关联调拨记录的商店。确认查询能返回这些记录,且不出现模式验证错误或 ACCESS_DENIED 错误。如果访问被拒绝,请检查访问范围和当前用户的权限。

对于既需要采购订单又需要其关联调拨记录的 Shopify CLI 应用,请在 shopify.app.toml 中包含以下范围:

[access_scopes] scopes = "read_inventory_purchase_orders,read_inventory_transfers"

请将这些值与现有的作用域列表合并,而不是替换它。已经拥有相应写入作用域的应用无需请求冗余的读取作用域。

此示例读取前五个采购订单,每个采购订单最多包含五行项目和五个关联的调拨单:

query PurchaseOrders { inventoryPurchaseOrders(first: 5) { nodes { id name status origin { supplierName } lineItems(first: 5) { nodes { id title } } transfers(first: 5) { nodes { id name } } } } }

对每个连接进行分页以检索更多记录。如果您的应用不需要调拨单,请省略该选择字段以及额外的调拨单作用域。

相关文档

  • InventoryPurchaseOrder 参考
  • 管理应用访问作用域
  • Shopify API 版本控制和候选版本
【声明】内容源于网络
0
0
Shopify电商独立站
1234
内容 7146
粉丝 0
Shopify电商独立站 1234
总阅读87.4k
粉丝0
内容7.1k