news 2026/6/16 3:13:02

Shopify Python API:官方 Shopify Admin SDK

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Shopify Python API:官方 Shopify Admin SDK

文章目录

  • Shopify Python API:官方 Shopify Admin SDK
    • 1、认证流程
    • 2、API 调用方式
    • 3、应用计费
    • 4、需要注意的事
    • 5、安装

Shopify Python API:官方 Shopify Admin SDK

Shopify Python API 在 GitHub 上已经拿到 1,427 Star。

这是 Shopify 官方维护的 Python SDK,用来对接 Shopify Admin API。做 Shopify 应用开发的开发者,无论是做公开应用还是私有应用,都需要这个库来处理认证和 API 调用。

1、认证流程

Shopify 应用分三种:公开应用、自定义应用、私有应用。这个 SDK 对三种场景都做了封装。

公开应用和自定义应用走 OAuth 2.0 流程。先用 API Key 和 Secret 初始化 Session,再生成授权链接让用户跳转,商户确认后回调里用临时 code 换取永久 access_token。代码大致这样:

importshopify shopify.Session.setup(api_key=API_KEY,secret=API_SECRET)session=shopify.Session(shop_url,api_version)access_token=session.request_token(request_params)

私有应用更简单,不需要 OAuth,直接用 Private App 密码当 token:

session=shopify.Session(shop_url,api_version,private_app_password)shopify.ShopifyResource.activate_session(session)

也支持临时 Session,上下文管理器自动清理:

withshopify.Session.temp(shop_url,api_version,token):shopify.GraphQL().execute("{ shop { name id } }")

2、API 调用方式

拿到 token 并 activate_session 之后,就可以调用 REST 或 GraphQL 接口。

REST 用法是 ActiveResource 风格,基于 pyactiveresource 实现:

shop=shopify.Shop.current()product=shopify.Product.find(179761209)product.price=19.99product.save()product.destroy()

支持带参数的查询和分页:

new_orders=shopify.Order.find(status="open",limit="50")page1=shopify.Product.find()ifpage1.has_next_page():page2=page1.next_page()

前缀资源(如订单下的 fulfillment)需要传入父资源 ID:

shopify.Fulfillment.find(255858046,order_id=450789469)

GraphQL 调用更直接:

result=shopify.GraphQL().execute('{ shop { name id } }')

也支持带变量和 operation_name 的复杂查询。

3、应用计费

公开应用需要接入 Shopify 的计费系统。SDK 封装了 ApplicationCharge 的创建和激活:

application_charge=shopify.ApplicationCharge.create({'name':'My public app','price':123,'test':True,'return_url':'https://domain.com/approve'})

创建后跳转到 confirmation_url 让用户确认,确认后检查 charge 状态即可。

4、需要注意的事

Shopify 在逐步废弃 REST Admin API,公开应用要在 2025 年 2 月前迁移到 GraphQL,自定义应用是 2025 年 4 月。新开发建议直接用 GraphQL。

这个库目前不支持异步请求和持久连接,高并发场景需要自行处理。

5、安装

pipinstall--upgradeShopifyAPI

Python 3.7 到 3.12 都支持。

包内还附带了一个 shopify_api.py 命令行工具,可以配置默认凭证后直接进入交互式控制台调试 API。

ade ShopifyAPI

Python 3.7 到 3.12 都支持。 包内还附带了一个 shopify_api.py 命令行工具,可以配置默认凭证后直接进入交互式控制台调试 API。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/14 7:47:17

2026年探秘成都双子塔:那些让人回味无穷的美味餐厅

2026年探秘成都双子塔:龙鲤小院——用“酵香川味”征服味蕾的宝藏餐厅在成都交子大道金融核心区,双子塔的现代光芒下,藏着一处让老饕们“偷得浮生半日闲”的宋韵院落——龙鲤小院。这家餐厅凭借“酵香川味”和“茶餐一体”的创新模式&#xf…

作者头像 李华
网站建设 2026/6/14 0:52:48

若依框架导出Excel合并行功能详解:从注解配置到源码改造的完整指南

若依框架Excel行合并功能深度实战:从注解配置到源码改造全解析在企业级应用开发中,数据导出是高频需求场景。当面对订单明细、财务报表等需要按主键字段合并展示的数据时,常规的Excel导出往往会导致重复数据冗余,严重影响报表可读…

作者头像 李华
网站建设 2026/6/13 7:09:52

制造业的知识都在老师傅脑子里,怎么装进AI?

?---最近跟一个制造业朋友聊天,他说了句大实话:"我们最值钱的知识不在系统里,在老张老王脑子里。"老张是干了二十年的设备维修主管,闭着眼听声音就能判断轴承该换了。老王是工艺工程师,哪批零件用…

作者头像 李华
网站建设 2026/6/13 13:40:08

期末论文扎堆不用慌,百考通AI帮你高效搞定课业写作难题

每到期末复习周,高校学生都会陷入典型的课业两难困境:一方面要集中精力备战期末考试、应对随堂测验,另一方面各类课程论文、结课作业集中扎堆。不同学科的结课论文标准各不相同,文科侧重理论阐述与案例分析,理工科要求…

作者头像 李华