/v2/users/inquiryUserInfo
POST /v2/users/inquiryUserInfo
With this API call, a merchant can inquire about user information with the access token. The specific information to query is defined by the scopes of the authorization code you obtained by calling the my.getAuthCode JSAPI.
Structure
A message consists of a header and body. The following sections are focused on the body structure. For the header structure, see:
Request parameters
Field | Data type | Required | Description | Example |
appId | String | Yes | Indicates the unique ID assigned by Mini Program Platform to identify a mini program.
Note: Obtain this field via the my.getAppIdSync JSAPI or Mini Program Platform. | "3333010071465913xxx" |
accessToken | String | Yes | The access token is used to access user information. For the specific information that can be accessed, see the my.getAuthCode JSAPI.
Note: Obtain this field via the /v2/authorizations/applyToken API. | "281010033AB2F588D14B43238637264FCA5AAF35xxxx" |
authClientId | String | Yes | Indicates the unique ID assigned by the super app to identify an authorized merchant.
| "202016726873874774774xxxx" |
extendInfo | String | No | Indicates the extended information about this API.
| copy
|
Response parameters
Field | Data type | Required | Description | Example |
result | Yes | Indicates the request result such as status and error codes. | copy
| |
userInfo | No | Indicates the user information that the merchant queried. Notes:
| See Response sample for details. |
Result process logic
In the response, the result.resultStatus field indicates the result of processing a request. The following table describes each result status:
Result status | Description |
S | The inquiry is successful. Use the The corresponding result.resultCode is |
U | The status of the inquiry is unknown. The corresponding result.resultCode is |
F | The inquiry is failed. The corresponding result.resultCode and result.resultMessage are various based on different situations. For details, see the following Error codes section. |
Error codes
Error codes are usually classified into the following categories:
- Common error codes are common for all mini program OpenAPIs in V2.
- API-specific error codes: are listed in the following table.
Error code | Result status | Error message | Further action |
INVALID_AUTH_CLIENT | F | Either the merchant does not exist or the merchant does not onboard to the native app. | Use a valid authClientId assigned by the super app. |
INVALID_ACCESS_TOKEN | F | The access token is not valid. | Obtain a new authorization code via the my.getAuthCode JSAPI and then get a valid access token with the authorization code via the /v2/authorizations/applyToken API. |
EXPIRED_ACCESS_TOKEN | F | The access token is expired. | Obtain a new access token with a refresh token via the /v2/authorizations/applyToken API. |
Samples
The data flow of inquiring about a user's information is illustrated as below:
- The merchant server calls this API with the access token to inquire about the user's information.
- The super app server returns the user's information to the merchant server based on the scopes of the access token.
Request
{
"appId": "3333010071465913xxx",
"accessToken": "281010033AB2F588D14B43238637264FCA5AAF35xxxx",
"authClientId": "202016726873874774774xxxx"
}
The merchant (202016726873874774774xxxx
) uses the access token (281010033AB2F588D14B43238637264FCA5AAF35xxxx
) to access the user's specific information.
Response
{
"result": {
"resultCode":"SUCCESS",
"resultStatus":"S",
"resultMessage":"success"
},
"userInfo": {
"userId": "1000001119398804xxxx",
"status": "ACTIVE",
"nickName": "Jack",
"userName": {
"fullName": "Jack Sparrow",
"firstName": "Jack",
"lastName": "Sparrow"
},
"avatar": "http://example.com/avatar.htm?avatarId=FBF16F91-28FB-47EC-B9BE-27B285C23CD3xxxx",
"gender": "MALE",
"birthDate": "2020-07-25",
"nationality": "US",
"loginIdInfos": [
{
"loginId": "1116874199xxx",
"loginIdType": "MOBILE_PHONE"
}
],
"contactInfos": [
{
"contactNo": "1116874199xxx",
"contactType": "MOBILE_PHONE"
}
],
"extendInfo": "{\"appUserId\":\"200xxxx\",\"acqUserId\":\"300xxxx\"}"
}
}
In the above sample, result.resultStatus is S
, which means the inquiry request is successful. And the specified userInfo includes the user information returned by the super app.