Project Authorization Mode

The project authorization model is suitable for B-side projects in various industries, such as digital transformation or intelligent upgrade of hotels, offices, schools and other projects.

  • Project: refers to the project created through the Aqara IoT Solution Platform, and the user can bind the devices to the project through the provided implementation tool.

The sequence diagram of the authorization process is shown below.

project-auth

Step 1 Get authorization verification code

  1. Register and log in to Aqara IOT Solution Platform;
  2. Create a project, select the project that needs to be authorized-Extension service page;
  3. Obtain the authorization verification code.

Step 2 Obtain the accessToken through the authorization verification code

  • API intent: config.auth.getToken
  • Description: Before the authorization code expires, obtain the accessToken through the authorization code. The default validity period of the access token is 7 days.
  • Request parameters
Name Type Is required? Description
authCode String Yes The authCode requested in the previous step
accountType Integer No Account Type, 1- project authorization
  • Request Demo:
{
  "intent": "config.auth.getToken",
  "data": {
    "authCode": "xxxx",
    "accountType": 1
  }
}
  • Response parameters
Name Type Description
expiresIn String The remaining valid time of the access token, the unit is s.
openId String Authorized user's unique identifier
accessToken String Access token
refreshToken String Refresh token, the validity period of refreshToken is the access token’s expiration date plus 30 days.
  • Response demo:
{
  "code": 0,
  "requestId": "",
  "message": "Success",
  "msgDetails": null,
  "result": {
    "expiresIn": "86400",
    "openId": "593652793976837702248177061889",
    "accessToken": "b8001e1893f5e4316a4f8c3b47df3720",
    "refreshToken": "ddd9dc7e9ec7b772e852121ed2fe75aa"
  }
}

Step 3 Refresh the accessToken through refreshToken to obtain new accessToken and refreshToken

  • API intent: config.auth.refreshToken
  • Description: Before the accessToken expires, refresh the access token with refreshToken through this interface. The refreshToken duration defaults to the period of accessToken + 30 days.
  • Request parameters
Name Type Is required? Description
refreshToken String Yes Refresh token
  • Request Demo
{
  "intent": "config.auth.refreshToken",
  "data": {
    "refreshToken": "xxxx"
  }
}
  • Response parameters
Name Type Description
expiresIn String The remaining valid time of the access token, the unit is s.
openId String Authorized user's unique identifier
accessToken String New access token
refreshToken String New refresh token
  • Response demo
{
  "code": 0,
  "requestId": "",
  "message": "Success",
  "msgDetails": null,
  "result": {
    "expiresIn": "86400",
    "openId": "593652793976837702248177061889",
    "accessToken": "b8001e1893f5e4316a4f8c3b47df3720",
    "refreshToken": "ddd9dc7e9ec7b772e852121ed2fe75aa"
  }
}
Copyright © 2023 Lumi United Technology Co., Ltd. all right reserved,powered by GitbookFile Modify: 2024-04-24 15:18:24

results matching ""

    No results matching ""