Weibo APIs - User Profile (V3)
prod-global
GET
/api/weibo/get-user-detail/v3
Retrieves detailed profile information for a specified Weibo user, including nickname, avatar, user ID, follower/following counts, bio, and verification status.
Typical use cases:
- Creator/KOL identification and monitoring
- Enriching user records for analytics and reporting
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
token | query | string | Yes | API access token. |
uid | query | string | Yes | Weibo User ID (UID). |
Code Samples
💡 Environment Note
Default samples use https://api.justoneapi.com (prod-global). For users in Mainland China, it is recommended to replace it with http://47.117.133.51:30015 (prod-cn) for better performance. See Environment Guide.
bash
# Tip: For Mainland China, replace https://api.justoneapi.com with http://47.117.133.51:30015
curl -X GET "https://api.justoneapi.com/api/weibo/get-user-detail/v3?token=YOUR_API_KEY&uid=VALUE"text
I want to use the "User Profile (V3)" API from Just One API.
API Endpoint: https://api.justoneapi.com/api/weibo/get-user-detail/v3
HTTP Method: GET
Authentication: Append "?token=YOUR_API_KEY" to the URL.
OpenAPI Definition: https://docs.justoneapi.com/openapi/weibo-apis/user-profile-v3-en.json
Parameters:
- token (query): API access token. (Required)
- uid (query): Weibo User ID (UID). (Required)
Return format: JSON
Response Handling & Error Codes:
1. Business results should be determined by the "code" field in the response body (code 0 means success).
2. Timeout Recommendation: Set request timeout to at least 60 seconds.
3. Business Code Reference:
- 0: Success
- 100: Invalid or Inactive Token
- 301: Collection Failed. Please Retry.
- 302: Rate Limit Exceeded
- 303: Daily Quota Exceeded
- 400: Invalid Parameters
- 500: Internal Server Error
- 600: Permission Denied
- 601: Insufficient Balance
Please help me write a script in my preferred programming language to call this API and handle the response.python
# Tip: For Mainland China, replace https://api.justoneapi.com with http://47.117.133.51:30015
import requests
url = "https://api.justoneapi.com/api/weibo/get-user-detail/v3?token=YOUR_API_KEY&uid=VALUE"
response = requests.get(url)
print(response.json())js
// Tip: For Mainland China, replace https://api.justoneapi.com with http://47.117.133.51:30015
const response = await fetch("https://api.justoneapi.com/api/weibo/get-user-detail/v3?token=YOUR_API_KEY&uid=VALUE", {
method: "GET"
});
const data = await response.json();
console.log(data);java
// Tip: For Mainland China, replace https://api.justoneapi.com with http://47.117.133.51:30015
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.justoneapi.com/api/weibo/get-user-detail/v3?token=YOUR_API_KEY&uid=VALUE"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}go
// Tip: For Mainland China, replace https://api.justoneapi.com with http://47.117.133.51:30015
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
client := &http.Client{}
url := "https://api.justoneapi.com/api/weibo/get-user-detail/v3?token=YOUR_API_KEY&uid=VALUE"
req, _ := http.NewRequest("GET", url, nil)
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}php
// Tip: For Mainland China, replace https://api.justoneapi.com with http://47.117.133.51:30015
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.justoneapi.com/api/weibo/get-user-detail/v3?token=YOUR_API_KEY&uid=VALUE");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
$response = curl_exec($ch);
curl_close($ch);
echo $response;Responses
json
{
"code": 0,
"data": {
"ok": 1,
"data": {
"user": {
"id": 7448795925,
"idstr": "7448795925",
"pc_new": 7,
"screen_name": "A2O_WORLD",
"profile_image_url": "https://tvax1.sinaimg.cn/crop.0.0.1080.1080.50/00886o5Lly8iaq3yj8ssrj30u00u03ys.jpg?KID=imgbed,tva&Expires=1773077735&ssig=JkCC5UPCtr",
"profile_url": "/u/7448795925",
"verified": true,
"verified_type": 0,
"domain": "a2ozone",
"weihao": "",
"verified_type_ext": 2,
"status_total_counter": {
"total_cnt_format": "63.9万",
"comment_cnt": "74,298",
"repost_cnt": "26,171",
"like_cnt": "538,235",
"total_cnt": "638,704"
},
"avatar_large": "https://tvax1.sinaimg.cn/crop.0.0.1080.1080.180/00886o5Lly8iaq3yj8ssrj30u00u03ys.jpg?KID=imgbed,tva&Expires=1773077735&ssig=SLJr3Ap5A6",
"avatar_hd": "https://tvax1.sinaimg.cn/crop.0.0.1080.1080.1024/00886o5Lly8iaq3yj8ssrj30u00u03ys.jpg?KID=imgbed,tva&Expires=1773077735&ssig=0nYBMaDrfF",
"follow_me": false,
"following": false,
"mbrank": 1,
"mbtype": 12,
"v_plus": 0,
"user_ability": 2376200,
"planet_video": false,
"verified_reason": "A2O Entertainment官方微博",
"description": "A2O官方网站:https://www.a2oentertainment.com.cn",
"location": "北京",
"gender": "m",
"followers_count": 125870,
"followers_count_str": "12.6万",
"friends_count": 36,
"statuses_count": 326,
"url": "",
"svip": 1,
"vvip": 1,
"cover_image_phone": "https://wx2.sinaimg.cn/crop.0.0.640.640.640/00886o5Lgy1i6mf701fn5j31o01o0wkv.jpg",
"icon_list": [
{
"type": "vip",
"data": {
"mbrank": 1,
"mbtype": 12,
"svip": 1,
"vvip": 1
}
}
],
"user_type": 0,
"is_star": "0",
"is_muteuser": false,
"special_follow": false
},
"tabList": [
{
"name": "home",
"tabName": "精选"
},
{
"name": "feed",
"tabName": "微博"
},
{
"name": "newVideo",
"tabName": "视频"
},
{
"name": "superTopic",
"tabName": "超话"
},
{
"name": "album",
"tabName": "相册"
}
],
"blockText": ""
}
}
}💡 Note: For list data, the example shows only 1-2 items for simplicity. The actual count depends on the API response.
