【平臺介紹】
唯品會成立于2008年,在中國開創(chuàng)了“名牌折扣+限時搶購+正品保障”的創(chuàng)新電商模式,并持續(xù)深化為“精選品牌+深度折扣+限時搶購”的正品時尚特賣模式,在線銷售服飾鞋包、美妝、母嬰、居家等各類名品。
唯品會率先在國內(nèi)開創(chuàng)了特賣這一獨特的商業(yè)模式,加上其“零庫存”的物流管理以及與電子商務(wù)的無縫對接模式,唯品會得以在短時間內(nèi)在電子商務(wù)領(lǐng)域生根發(fā)芽。
【授權(quán)說明】
唯品會平臺是授權(quán)型平臺。
ThirdAppKey:第三方平臺
AppKeyThird AppSecret:第三方平臺
AppSecret SessionKey:授權(quán)號
【獲取方式】
1.創(chuàng)建應用,注冊成為開發(fā)者
1)登錄唯品會開放平臺的后臺,并請使用唯品會賬戶進行登錄
2) 選擇加入開放平臺
3) 點擊注冊
4) 填寫基本信息(*號為必填項)
5) 注冊成功
6) 填寫開發(fā)者認證信息(填寫了認證信息才可以提交應用審核)
2.創(chuàng)建應用
1) 進入控制臺
2) 創(chuàng)建應用
3) 填寫應用信息
目前VOP支持應用包括類型,請根據(jù)合作類型填寫相應資料
? 買家無線應用:為買家提供無線端唯品會商品導購服務(wù)(如市場管理中心等合作項目,請確定選擇合作部門,保證應用審核正常通過)
? 買家網(wǎng)站應用:和外部合作網(wǎng)站提供唯品會流量引入、商品導購、品牌推薦、活動推廣、海外業(yè)務(wù)等服務(wù),為買家提供在第三方平臺上運行的 唯品會特賣商品查詢和搶購工具
? 供應商--自研應:具有信息技術(shù)能力的供應商直接和唯品會進行系統(tǒng)對接(供應商ID請向?qū)由虅?wù)索?。?
? 供應商--服務(wù)商應用:ISV為供應商提供應用服務(wù)
3.審核授權(quán)
進入應用詳情
應用提交審核前,必須先完善開發(fā)者認證信息。提交審核后,審核期間的應用基本信息不可以修改。審核通過將獲得生產(chǎn)環(huán)境中接口調(diào)用權(quán)限(沙箱可直接使用)
4.獲取授權(quán)
一、引言
您的應用和唯品會開放平臺對接后,需要獲取有關(guān)用戶(包括供應商)受限訪問的隱私數(shù)據(jù)(如:商品、訂單等),為保證用戶數(shù)據(jù)的安全性與隱私性,您的應用需要取得用戶的授權(quán)。在這種情況下,您的應用需要引導用戶完成“使用唯品會帳號登錄并授權(quán)”的流程。
目前的授權(quán)過程采用OAuth2.0協(xié)議,如果想了解這個協(xié)議更多的技術(shù)細節(jié)請參見官方說明:http://oauth.net/2/。
如果您是ISV軟件商需要引導用戶到授權(quán)頁面,并且這個用戶擁有一個唯品會的賬號和密碼,同時完成此賬號和供應商ID的綁定認證。步驟如下:
1,ISV軟件商完成應用審核和沙箱聯(lián)調(diào)
2,使用ISV軟件的供應商到VOP站點完成 供應商身份的認證操作
3,ISV軟件引導供應商完成授權(quán)
4,供應商可以正常使用ISV軟件
您可以根據(jù)自己的應用場景,選擇適用的授權(quán)流程:
Server-side flow 此流程適合Web應用,要求ISV應用有Web Server應用,能夠保存應用本身的密鑰以及狀態(tài),可以通過https直接訪問授權(quán)服務(wù)器。
Native Application 此流程適合Mobile應用,同時應用無法與瀏覽器交互,但是可以外調(diào)用瀏覽器。
二、Server-side flow
此流程適合Web應用,要求ISV應用有Web Server應用,能夠保存應用本身的密鑰以及狀態(tài),可以通過https直接訪問授權(quán)服務(wù)器。 授權(quán)流程分為兩個步驟:
1)引導需要授權(quán)的用戶到如下地址: https://auth.vip.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI 如果用戶同意授權(quán),頁面跳轉(zhuǎn)至 YOUR_REGISTERED_REDIRECT_URI/?code=CODE
2)換取訪問令牌 (http Post )
https://auth.vip.com/oauth2/tokenclient_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorizatio
ncode&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&request_client_ip=127.0.0.1&code=CODE
返回值包含access_token
使用獲取到的access_token調(diào)用API
示例
1)登錄頁
用戶操作:用戶在登錄頁輸入唯品會的用戶名、密碼和驗證碼,登錄。
2)授權(quán)頁 用戶操作:授權(quán)或取消授權(quán)
若用戶點“授權(quán)”按鈕后,會跳轉(zhuǎn)到回調(diào)地址,地址上同時附有code,應用可以獲取并使用該code去換取access_token
若用戶點擊“取消”按鈕,會跳轉(zhuǎn)到回調(diào)地址,地址上同時附有error為錯誤碼,error_description為錯誤描述
三、Native Application
此流程適合Mobile應用,同時應用無法與瀏覽器交互,但是可以外調(diào)用瀏覽器。
當redirect_uri=urn:ietf:wg:oauth:2.0:oob的時候,調(diào)用Native Application流程。
授權(quán)過程:
1)獲取授權(quán)碼:https://auth.vip.com/oauth2/authorize
2)換取訪問令牌:https://auth.vip.com/oauth2/token
示例
1)請求授權(quán)登錄
https://auth.vip.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=urn:ietf:wg:oauth:2.0:oob&state=1212&display=mobile
用戶操作:用戶在登錄頁輸入唯品會的用戶名、密碼和驗證碼,登錄。
2)請求授權(quán)用戶授權(quán)
用戶操作:授權(quán)或者取消授權(quán)
如果點擊“授權(quán)”,頁面回調(diào)到默認頁面,同時授權(quán)碼顯示在頁面上
4)獲取訪問令牌
四、應用的驗證授權(quán)流程
引導需要授權(quán)的用戶到如下地址:
https://auth.vip.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI
如果用戶同意授權(quán),頁面跳轉(zhuǎn)至 YOUR_REGISTERED_REDIRECT_URI/?code=CODE
換取Access Token
https://auth.vip.com/oauth2/token? client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&request_client_ip=127.0.0.1&code=CODE
返回值包含access_token
使用獲取到的access_token調(diào)用API
五、使用OAuth 2.0調(diào)用API
直接使用參數(shù)傳遞參數(shù)名為 access_token
http://myi.vip.com/api/account/info?access_token=abcd
六、授權(quán)有效期
程序調(diào)用接口時需判斷接口的返回值,如果用戶的access_token失效,需要引導用戶重新授權(quán)。失效原因有以下幾個: 用戶取消了對應用的授權(quán)
access_token自然過期,access_token有效期為30天。
用戶修改了密碼,凍結(jié)了對應用的授權(quán)
唯品會發(fā)現(xiàn)用戶帳號被盜,凍結(jié)了用戶對應用的授權(quán)
七、接口說明
接口 | 說明 |
OAuth2/authorize | 請求用戶授權(quán)token |
OAuth2/token | 獲取授權(quán)過的access token |
OAuth2/token_info | 授權(quán)信息查詢接口 |
OAuth2/revoke_token | 授權(quán)回收接口 |
/oauth2/authorize
1) 說明 請求用戶授權(quán)token
2) URL https://auth.vip.com/oauth2/authorize
3) HTTP請求方式 GET
4) 請求參數(shù)
5) 返回數(shù)據(jù)
6) 示例
//請求:
https://auth.vip.com/oauth2/authorize? client_id=0123456789&response_type=code&redirect_uri=http://myi.vip.com/index.html
//同意授權(quán)后會重定向:http://myi.vip.com/index.html&code=23456
/oauth2/token
1) 說明 獲取授權(quán)過的access token
2) URL https://auth.vip.com/oauth2/token
3) HTTP請求方式 POST
4) 請求參數(shù)
5) 返回數(shù)據(jù)
6) 示例
//請求:
https://auth.vip.com/oauth2/token? grant_type=authorization_code&client_id=12345&client_secret=abcde&redirect_uri=myi.vip.com/index.h tml&request_client_ip=127.0.0.1&code=23456
//返回結(jié)果: {
"access_token": "63945DC",
"expires_in": 12340,
"open_id": "69BA0D4"
}
/oauth2/token_info
1) 說明 授權(quán)信息查詢接口
2) URL https://auth.vip.com/oauth2/token_info
3) HTTP請求方式 POST
4) 請求參數(shù)
5) 返回數(shù)據(jù)
6) 示例
//請求:
https://auth.vip.com/oauth2/token_info?access_token=63945DC
//正常返回結(jié)果:
{
"access_token": "63945DC4F3A5AA8DF537833900713E8341EF430C",
"create_at": "2015-03-13 17:24:20",
"expires_in": 12340,
"expires_time": "2015-03-13 20:50:00",
"open_id": "69BA0D43AF9E3821EE93F72D3BB14724",
"token_type": "Bearer"
}
//如果令牌已經(jīng)被回收
{
"code": 0,
"msg": "token revoked"
}
/oauth2/revoke_token
1) 說明 授權(quán)回收接口
2) URL https://auth.vip.com/oauth2/revoke_token
3) HTTP請求方式 POST
4) 請求參數(shù)
5) 返回數(shù)據(jù)
6) 示例
//請求:
https://auth.vip.com/oauth2/ revoke_token?access_token=63945DC
//正常返回結(jié)果:
{
"code": 0,
"msg": "success"
}
//如果令牌無效
{
"code": 30111,
"msg": "access token invalid"
}