第三方应用 - 获取token

优质
小牛编辑
121浏览
2023-12-01

获取token分为两个步骤,第一步是获取授权码,第二步才是获取token

获取demo


获取授权码

请求格式:

  1. GET https://ppmessage.com/ppauth/auth?state=xxxx&client_id=xxxx&redirect_id=xxxx&response_type=code

参数说明:

参数说明
state表示客户端的当前状态,可以指定任意值,PPMessage服务器会原封不动地返回这个值
client_id表示客户端的api_key(即kefu api_keyconsole api_key)
redirect_uri表示重定向URI,最终获取token成功后,PPMessage服务器会把用户导向这个URI
response_type表示授权类型,此处为授权码类型,值为code

返回结果:

成功获取授权码后,PPMessage服务器会把用户导向PPMessage应用授权 页面。

应用授权页面,用户输入他的邮箱和密码,然后点击继续按钮。如果邮箱和密码匹配,PPMessage服务器会将用户导向你指定的redirect_uri,并带上授权码和state

最终的uri格式:

  1. http://you-site.com?code=xxxxxx&state=xxxx

获取 Token

PPMessage服务器将用户导向你的redirect_uri后,你能从这个uri里获取到authorization codestate

state应该和你上一步提供的state一致。

现在你可以通过authorization code来获取token。

请求:

  1. POST https://ppmessage.com/ppauth/token

请求body参数:

参数说明
code你获取的授权码
client_id表示客户端的api_key(即kefu api_keyconsole api_key)
client_secret表示客户端的api_secret(即kefu api_secretconsole api_secret)
redirect_uri重定向uri, 应该和之前的一致
grant_typetoken 类型, 值为authorization_code

返回结果:

参数说明
access_token表示token,用这个token可以调用PPMessage API
token_type表示token类型,值为Bearer
expires_in表示token有效时间,值为3600*24秒,即24小时

调用API

成功获取到token之后,你可以使用token调用PPMessage API

  • headers:请求headers必须包括Content-TypeAuthorization(需要用你获取的token替代xxxxxx)。

    1. {
    2. "Content-Type": "application/json",
    3. "Authorization": "OAuth xxxxxx"
    4. }
  • body: 部分API需要你提供app_uuid(即kefu api_uuidconsole api_uuid),或user_uuid(在 应用授权 界面输入邮箱和密码的用户)。此时body应包括相应参数。

    1. {
    2. "app_uuid": "xxxx",
    3. "user_uuid": "xxxx",
    4. ...
    5. }
  • uri: 请求uri格式

    1. POST https://ppmessage.com/api/xxxx
  • response: 返回结果(例子)

    1. {
    2. "list": [],
    3. "error_code": "0",
    4. "error_string": "success",
    5. "uri": "/PP_GET_APP_SERVICE_USER_LIST"
    6. }

    要获取所有API的调用方法,请查看 API列表。