Skip to content

Xiaohongshu Pgy APIs - User Blogger (V1)

prod-global
GET
/api/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1

Retrieve blogger profile information.

Parameters

NameInTypeRequiredDescription
tokenquerystringYesUser authentication token.
userIdquerystringYesBlogger's user ID.

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/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1?token=YOUR_API_KEY&userId=VALUE"
text
I want to use the "User Blogger (V1)" API from Just One API.
API Endpoint: https://api.justoneapi.com/api/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1
HTTP Method: GET
Authentication: Append "?token=YOUR_API_KEY" to the URL.
OpenAPI Definition: https://docs.justoneapi.com/openapi/xiaohongshu-pgy-apis/user-blogger-v1-en.json

Parameters:
- token (query): User authentication token. (Required)
- userId (query): Blogger's user ID. (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/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1?token=YOUR_API_KEY&userId=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/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1?token=YOUR_API_KEY&userId=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/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1?token=YOUR_API_KEY&userId=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/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1?token=YOUR_API_KEY&userId=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/xiaohongshu-pgy/api/solar/cooperator/user/blogger/userId/v1?token=YOUR_API_KEY&userId=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": {
    "userId": "659902c1000000002200361b",
    "valid": 1,
    "headPhoto": "https://sns-avatar-qc.xhscdn.com/avatar/1040g2jo318js80k03k005pcp0b0ogdgrnpa11ig?imageView2/2/w/120/format/jpg",
    "name": "团子有点咸",
    "redId": "4639645438",
    "location": "河北 廊坊 固安县",
    "homePageDisplay": 1,
    "travelAreaList": null,
    "type": [],
    "personalTags": [
      "1-3岁",
      "爸爸",
      "萌娃",
      "妈妈",
      "家庭",
      "夫妻"
    ],
    "fansCount": 103684,
    "likeCollectCountInfo": 2757601,
    "businessNoteCount": 31,
    "totalNoteCount": null,
    "recommend": null,
    "picturePrice": 13000,
    "videoPrice": 18000,
    "lowerPrice": 13000,
    "userType": 2,
    "showPrice": null,
    "pictureState": 1,
    "videoState": 1,
    "isCollect": false,
    "cooperateState": 1,
    "pictureInCart": false,
    "videoInCart": false,
    "note": null,
    "live": null,
    "cps": null,
    "noteSign": null,
    "liveSign": null,
    "goodRecommendPermission": null,
    "cpc": null,
    "pictureCpcBasePrice": null,
    "pictureCpcPerPrice": null,
    "pictureCpcEstimateNum": null,
    "videoCpcState": 0,
    "videoCpcBasePrice": null,
    "videoCpcPerPrice": null,
    "videoCpcEstimateNum": null,
    "pictureCpcInCart": null,
    "videoCpcInCart": null,
    "contentTags": [
      {
        "taxonomy1Tag": "母婴",
        "taxonomy2Tags": [
          "母婴日常"
        ]
      }
    ],
    "featureTags": null,
    "industryTag": null,
    "gender": "女",
    "picPriceRemind": null,
    "videoPriceRemind": null,
    "currentLevel": 2,
    "nextLevel": -1,
    "priceState": 1,
    "resemblance": true,
    "noteList": null,
    "tradeType": null,
    "clickMidNum": 64478,
    "clickMidNumMcn": 64478,
    "interMidNum": 647,
    "fansNum": 103684,
    "matchNoteNumber": 0,
    "authorityList": null,
    "processingAuthorities": null,
    "pictureShowState": true,
    "videoShowState": true,
    "classifyCode": null,
    "predictiveExposure": null,
    "efficiencyValidUser": 0,
    "pictureReadCost": null,
    "videoReadCost": null,
    "pictureClickMidNum": 0,
    "pictureInterMidNum": 0,
    "videoClickMidNum": 0,
    "videoFinishRate": null,
    "videoInterMidNum": 0,
    "fans30GrowthRate": null,
    "fans30GrowthNum": 0,
    "nextPicturePrice": null,
    "nextVideoPrice": null,
    "fansRiseNum": null,
    "fansEngageNum": null,
    "overflowNum": null,
    "newHighQuality": 0,
    "isIndustryRecommend": null,
    "picturePriceGtZero": true,
    "videoPriceGtZero": true,
    "lowActive": false,
    "fansActiveIn28dLv": null,
    "fansEngageNum30dLv": null,
    "hundredLikePercent30": null,
    "thousandLikePercent30": null,
    "pictureHundredLikePercent30": null,
    "pictureThousandLikePercent30": null,
    "videoHundredLikePercent30": null,
    "videoThousandLikePercent30": null,
    "cooperType": 1,
    "buyerType": 1,
    "promiseImpNum": null,
    "kolType": 0,
    "showPromiseTag": 0,
    "activityList": [],
    "controlState": 0,
    "clothingIndustryPrice": {
      "bizType": null,
      "industryId": 0,
      "picturePrice": 0,
      "pictureState": 0,
      "videoPrice": 0,
      "videoState": 0
    },
    "fbState": 0,
    "forecastReadUvLower": 0,
    "forecastReadUvUpper": 0,
    "forecastGroupCoverRateLower": 0,
    "forecastGroupCoverRateUpper": 0,
    "intentionInfo": null,
    "seedAndHarcest": null,
    "liveImg": null,
    "liveId": null,
    "liveGMV": null,
    "isStar": null,
    "top2CategoryList": null,
    "hasBuyerAuth": false,
    "sellerRealIncomeAmt90d": 0,
    "estimatePictureCpm": 0,
    "estimatePictureCpmCompare": 0,
    "estimateVideoCpm": 0,
    "estimateVideoCpmCompare": 0,
    "estimatePictureEngageCost": 0,
    "estimatePictureEngageCostCompare": 0,
    "estimateVideoEngageCost": 0,
    "estimateVideoEngageCostCompare": 0,
    "inviteReply48hNumRatio": 0,
    "recommendReason": null,
    "kolHeadLabel": 0,
    "accumCoopImpMedinNum30d": 0,
    "estimateCpuv30d": 0,
    "accumPicCommonImpMedinNum30d": 0,
    "accumVideoCommonImpMedinNum30d": 0,
    "accumCommonImpMedinNum30d": 0,
    "marketTarget": null,
    "readMidCoop30": null,
    "interMidCoop30": null,
    "coopNoteNum30d": 0,
    "specialIndustryLimit": null,
    "kliveCnt30d": 0,
    "avgAgmv90d": 0,
    "avgLiveViewerNum": 0,
    "algoRecommendReasons": null,
    "mengagementNumMcn": 746,
    "mengagementNum": 746,
    "mcpuvNum30d": 0,
    "mEngagementNum": 746,
    "mEngagementNumMcn": 746,
    "mCpuvNum30d": 0
  }
}

💡 Note: For list data, the example shows only 1-2 items for simplicity. The actual count depends on the API response.