Updated on 2022-02-24 GMT+08:00

Authentication

Typical Scenario

This API is called by an NA for access authentication when the NA accesses open APIs of the IoT platform for the first time. After the authentication of the NA expires, the NA must call this API to perform authentication again so that the NA can continue to access open APIs of the IoT platform.

API Function

This API is used by an NA to get authenticated before accessing open APIs of the IoT platform for the first time.

Note

The authentication API is the prerequisite for calling other APIs. Except the authentication API itself, other APIs must use the accessToken obtained by the authentication API.

If the access token is obtained for multiple times, the previous access token is invalid and the last access token obtained is valid. Do not obtain the access token through concurrent attempts.

API Description

1
def getAuthToken(self, clientInfo)

Class

Authentication

Parameter Description

Parameter

Mandatory or Optional

Type

Location

Description

clientInfo

Mandatory

ClientInfo

-

For details, see ClientInfo.

ClientInfo structure

Parameter

Mandatory or Optional

Type

Location

Description

platformIp

Mandatory

String(256)

path

Indicates the IP address of the IoT platform.

platformPort

Mandatory

String(256)

path

Indicates the port number of the IoT platform, for example, 8743.

appId

Mandatory

String(256)

body

Uniquely identifies an NA. This parameter is used to identify an NA that can call open APIs provided by the IoT platform. The value of this parameter is obtained when the NA is created on the SP portal of the IoT platform.

secret

Mandatory

String(256)

body

Indicates the password that corresponds to appId. It is used to log in to the IoT platform. The value of this parameter is obtained when the NA is created on the SP portal of the IoT platform.

Return Value

AuthOutDTO structure

Parameter

Type

Description

scope

String(256)

Indicates the application permission scope, that is, the scope of IoT platform resources that can be accessed using the accessToken. This parameter has a fixed value of default.

tokenType

String(256)

Indicates the type of the accessToken. This parameter has a fixed value of bearer.

expiresIn

Number(256)

Indicates the validity time for the IoT platform to generate and return the accessToken, in seconds.

accessToken

String(256)

Indicates the authentication parameter that is used to access APIs of the IoT platform.

refreshToken

String(256)

Indicates the authentication parameter that is used to update the accessToken. The validity period of this parameter is 1 month.

Error Code

HTTP Status Code

Error Code

Error Description

Remarks

400

100449

The device is freezed cant operate.

The user does not have the operation permission.

Recommended handling: Check whether the user corresponding to appId has the permission to call the API.

400

102202

Required Parameter is null or empty.

Mandatory fields cannot be left blank.

Recommended handling: Check whether the mandatory parameters in the request are set.

401

100208

AppId or secret is not right.

appId or secret is incorrect.

Recommended handling:

  • Check whether appId and secret are correct. Specifically, check for new or missing characters.
  • Check whether the IP address in the request path is correct.

500

50252

Internal server error.

An internal server error occurs.

Recommended handling: An internal error occurs on the IoT platform. Contact IoT platform maintenance personnel.