点三  电商OMS/ERP/API帮您串联线上线下订单业务-稳定运行11年【免费试用】

客服热线

400 8080 092

当前位置: 首页 > 资讯 > API接口

拼多多API如何授权?

编辑:原创    时间:2024-03-22 17:17:21

拼多多开放平台为保证用户数据安全,将开放的拼多多API按是否需要用户授权划分成2类:一种是需用户授权的接口,一种是无需用户授权的接口,对需用户授权的接口,不论接口方向为查询亦或写入,均需要前置取得用户授权许可,授权以有效的调用令牌字段access_token作为唯一的鉴权指标。

如果开发者已创建的应用通过接口或者消息等方式通过拼多多开放平台操作用户数据时,则需要引导用户完成帐号「授权登录」的流程。该流程采用国际通用的OAuth2.0标准协议作为用户身份验证与授权协议,目前拼多多开放平台OAuth2.0服务支持采用以下多种方式获取access_token。接下来我们一起来看拼多多API如何授权?

在进行授权操作时,需要按以下流程图逐步完成授权全流程:

一、合理选择授权方式

对不同账号类型以及使用端,对应不同授权地址:

账号类型

授权形式

授权页链接

拼多多店铺

WEB端网页授权

https://fuwu.pinduoduo.com/service-market/auth

拼多多店铺

H5移动端网页授权

https://mai.pinduoduo.com/h5-login.html

多多进宝推手

WEB端网页授权

https://jinbao.pinduoduo.com/open.html

快团团团长

WEB端网页授权

https://oauth.pinduoduo.com/authorize/ktt

拼多多电子面单用户

WEB端网页授权

https://wb.pinduoduo.com/logistics/auth


二、按需组装授权页面

该步骤需要自主组装授权页URL,URL标准格式如下:
HTTP
https://{授权页链接}?response_type=code&client_id={应用client_id}&redirect_uri={client_id对应的回调地址}&state={自定义参数}


组装示例:

HTTP

https://fuwu.pinduoduo.com/service-market/auth?response_type=code&client_id=4b6**********************672e4c9a&redirect_uri=https%3A%2F%2Fwww.oauth.net%2F2%2F&state=1212



授权页可组装参数如下:

参数名称

是否必选

示例值

参数释义

client_id

必选

-

已创建应用-应用详情中查看应用详情中client_id字段值得到

response_type

必选

code

授权步骤类型,固定值为code

redirect_uri

必选

http://www.pinduoduo.com

已创建应用-应用详情中查看回调地址字段值,在用户完成授权后,code值将回调至该地址中。

注意:redirect_uri需进行url编码(encodeURIComponent

state

可选

-

自定义参数,授权完成后,原值将回调至redirect_uri

view

可选

web

可选webh5,默认为webH5移动端网页授权必填


在软件中引导用户通过浏览器(移动端为手机浏览器)访问组装完成的授权URL,将展示如下图所示的授权页面。如果商家主账号已经登录,点击「授权登录」按钮授权即可,如果商家主账号未登录,点击「授权登录」按钮即可进入登录页面,输入主账号用户名及密码登录成功之后,将回跳授权页面,点击「授权登录」按钮,授权即可。

规则及注意事项:
1)店铺类型及其状态限制:如果授权账号类型为拼多多店铺,则只允许店铺主账号才能授权成功,且店铺必须完成开店并且未发起退店申请
2)允许重复授权(当前存在频率限制,请勿密集重复授权),重复授权完成后,历史已获取的code、access_token以及refresh_token均会立即失效
3)允许取消授权:授权应用后,如果授权账号类型为拼多多店铺,可在拼多多服务市场-授权管理中取消授权
4)应用授权时长限制:由于不同应用使用的场景、用户角色不同、信息类型,导致其敏感度不同,我们对不同的应用标签和状态定义了不一样的授权有效时长,授权时长以获取accecss_token接口返回字段expires_at及expires_in的差值秒数为准
5)应用可授权数量限制:对于不同应用类型,其对应的可授权账号数量不同,如不限制则无需关注此影响,如果存在应用可授权数量限制,则必须在账号授权之前将账号名配置进对应要授权应用的可授权名单中,详情可在应用详情-授权管理中查看并配置
6)允许免订购授权:为方便用户使用发布至服务市场的应用,对应用新用户的授权登录将无需前置订购应用,系统将自动帮助用户完成试用动作并进入应用(前提是发布至服务市场应用已设置免费试用规格)
7)处罚及其限制影响:如您已创建的应用违反拼多多开放平台开发者规则,则将会受到新授权限制处罚,具体规则及限制情况可参考拼多多开放平台违规处理规则

标签类别

三方工具 *

二方系统 *

新业务应用

应用状态

授权参数

创建审核通过

access_token有效期

24小时

24小时

24小时

可授权账号数量

5

5

5

已上线

access_token有效期

24小时

1

1

可授权账号数量

25

5

不限制

已发布服务市场

access_token有效期

同订购时长

-

-

可授权账号数量

不限制

-

-

(授权时长和授权数量说明)


* 其中,三方工具主要包括以下应用类型:
Plain Text
卡券商工具,多多推广,短信服务,打单,进销存,商品优化,搬家上货,跨境企业ERP,企业ERP,物流仓储系统,Knock应用,订单处理
商家自研系统主要包括以下应用类型:
Plain Text
虚拟商家后台系统,全渠道商家后台系统,商家后台系统,国际商家自建仓系统

授权页面示例:
(拼多多店铺web端授权页面示例)


(拼多多店铺h5端授权页面示例)



三、用户授权获得授权码(code)

用户完成「授权登录」后,授权码code将返回到回调地址中,以参数code形式组装至回调地址中,应用可以获取并使用该code去换取access_token。
注意事项:code有效期10分钟,10分钟后code过期则需要重新授权,多次使用code换取access_token是一样的,返回数据展示如下(如在授权页面中组装了参数state并予以赋值,则系统将会原值回调至回调地址):
HTTP
https://{client_id对应的回调地址redirect_uri}/?code=74afa4f59c4048d3aba7a152089e9db87797d6cc&state=1212

访问接口获取调用令牌(access_token)
通过pdd.pop.auth.token.create接口获取access_token
注意事项:access_token有效期同服务市场订购时长(详细规则见上方“授权时长和授权数量说明”),过期后需要重新授权,access_token获取请求如下:
HTML
https://gw-api.pinduoduo.com/api/router?type=pdd.pop.auth.token.create&data_type=JSON&client_id=
{应用client_id}&code={获得的授权码code}×tamp=1592922716&sign=5A33CB0DDF40D03ECBAB38DBA668B82F

请求示例(换取access_token返回值):
JSON收起
{
"pop_auth_token_create_response":{
"refresh_token_expires_in":86388,
"w1_expires_in":1593009849,
"owner_name":"pdd3123123",
"owner_id":"123123",
"w2_expires_at":1593009849,
"r2_expires_at":1593009849,
"access_token":"40e6350184204ea8a9e567ec80d875d81570caf8",
"refresh_token":"6a2b3de636b942bda79353973419553ab9be53fc",
"w2_expires_in":86388,
"refresh_token_expires_at":1593009849,
"expires_at":1593009849,
"r1_expires_in":86388,
"scope":[
"pdd.goods.template.property.value.search",
"pdd.goods.sku.price.update",
"pdd.goods.commit.list.get",
"pdd.goods.logistics.template.create",
"pdd.goods.logistics.ser.template.detail",
"pdd.exchange.third.field",],
"w1_expires_at":1593009849,
"r2_expires_in":86388,
"r1_expires_at":1593009849,
"expires_in":86388,
"request_id":"15929234615560345"
}
}


四、刷新access_token

操作方法类似获取access_token,调用pdd.pop.auth.token.refresh接口,但刷新授权不会延长access_token的有效期,请求参数如下,refresh_token有效时间同授权时长,有效期内均可以请求刷新access_token。

请求示例:
HTML
https://gw-api.pinduoduo.com/api/router?type=pdd.pop.auth.token.create&data_type=JSON&client_id=
{应用client_id}&type=pdd.pop.auth.token.refresh&refresh_token={获得的refresh_token}×tamp=1592922716&sign=5A33CB0DDF40D03ECBAB38DBA668B82F

刷新access_token的返回结果内容示例:
JSON收起
{
"pop_auth_token_refresh_response":{
"refresh_token_expires_in":86388,
"w1_expires_in":1593009849,
"owner_name":"pdd3123123",
"owner_id":"123123",
"w2_expires_at":1593009849,
"r2_expires_at":1593009849,
"access_token":"40e6350184204ea8a9e567ec80d875d81570caf8",
"refresh_token":"6a2b3de636b942bda79353973419553ab9be53fc",
"w2_expires_in":86388,
"refresh_token_expires_at":1593009849,
"expires_at":1593009849,
"r1_expires_in":86388,
"scope":[
"pdd.goods.template.property.value.search",
"pdd.goods.sku.price.update",
"pdd.goods.commit.list.get",
"pdd.goods.logistics.template.create",
"pdd.goods.logistics.ser.template.detail",
"pdd.exchange.third.field",],
"w1_expires_at":1593009849,
"r2_expires_in":86388,
"r1_expires_at":1593009849,
"expires_in":86388,
"request_id":"15929234615560345"
}

50000+企业的共同选择
点三全渠道全链路ERP

免费注册试用

400 8080 092