{
  "openapi": "3.0.1",
  "info": {
    "title": "Xiaohongshu Pugongying 蒲公英 KOL Scraper - Rates & Stats",
    "description": "Find Xiaohongshu (RedNote) influencers on the Pugongying (蒲公英) KOL marketplace: search bloggers by keyword, category, gender, location and followers with picture and video note rates and median reads; get blogger profiles and keyword stats. No login or cookies needed. Export JSON, CSV or Excel.",
    "version": "0.1",
    "x-build-id": "YlANCUvd8JZMgMvbI"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/clover_folktale~pugongying-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-clover_folktale-pugongying-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/clover_folktale~pugongying-scraper/runs": {
      "post": {
        "operationId": "runs-sync-clover_folktale-pugongying-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/clover_folktale~pugongying-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-clover_folktale-pugongying-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "search",
              "blogger",
              "keyword",
              "bloggerReport",
              "noteReport",
              "bloggerNotes",
              "liveSearch",
              "contentSquare",
              "similarBloggers"
            ],
            "type": "string",
            "description": "What to scrape: bloggers matching a search, profiles of given bloggers, or keyword statistics (optionally with a daily series and related words); for given bloggers, up to six data reports or a list of their notes; for given notes, a full note report; the live-commerce streamer list; a content square board; or the bloggers the marketplace lists as similar to given bloggers.",
            "default": "search"
          },
          "keyword": {
            "title": "Keyword (mode: search)",
            "type": "string",
            "description": "Search term, in Chinese. To browse bloggers by filters only, clear it and pick at least one filter below (category, gender, location or follower range).",
            "default": "面膜"
          },
          "searchBy": {
            "title": "Search by (mode: search)",
            "enum": [
              "notes",
              "nickname"
            ],
            "type": "string",
            "description": "Match the keyword against what bloggers post about, or against blogger nicknames.",
            "default": "notes"
          },
          "category": {
            "title": "Category (mode: search)",
            "enum": [
              "any",
              "beauty",
              "skincare",
              "personal-care",
              "parenting",
              "fashion",
              "food",
              "home",
              "entertainment-news",
              "fitness",
              "pets",
              "culture-art",
              "hobbies",
              "lifestyle",
              "education",
              "workplace",
              "relationships",
              "photography",
              "games",
              "tech",
              "travel",
              "music",
              "comedy",
              "health",
              "cars",
              "weddings",
              "finance-business",
              "materials",
              "other"
            ],
            "type": "string",
            "description": "Only bloggers in this content category.",
            "default": "any"
          },
          "gender": {
            "title": "Blogger gender (mode: search)",
            "enum": [
              "any",
              "male",
              "female"
            ],
            "type": "string",
            "description": "Only male or female bloggers.",
            "default": "any"
          },
          "location": {
            "title": "Location (mode: search)",
            "type": "string",
            "description": "Place the blogger is based in, a province, city or district name in Chinese, e.g. 杭州."
          },
          "minFollowers": {
            "title": "Min followers (mode: search)",
            "minimum": 0,
            "type": "integer",
            "description": "Only bloggers with at least this many followers."
          },
          "maxFollowers": {
            "title": "Max followers (mode: search)",
            "minimum": 0,
            "type": "integer",
            "description": "Only bloggers with at most this many followers."
          },
          "sort": {
            "title": "Sort (mode: search)",
            "enum": [
              "relevance",
              "followers",
              "reads",
              "engagement",
              "price",
              "picture-price",
              "video-price"
            ],
            "type": "string",
            "description": "Order of the results.",
            "default": "relevance"
          },
          "sortOrder": {
            "title": "Sort order (mode: search)",
            "enum": [
              "desc",
              "asc"
            ],
            "type": "string",
            "description": "Highest first or lowest first.",
            "default": "desc"
          },
          "bloggers": {
            "title": "Bloggers (modes: blogger, bloggerReport, bloggerNotes, similarBloggers)",
            "type": "array",
            "description": "Blogger user IDs (24 characters, the userId of a search result) or Xiaohongshu profile links, e.g. https://www.xiaohongshu.com/user/profile/59e97be5e8ac2b6168370b13.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keywords (mode: keyword)",
            "type": "array",
            "description": "Keywords to report on, up to 100 characters each. Chinese keywords work best.",
            "items": {
              "type": "string"
            }
          },
          "reportTypes": {
            "title": "Report types (mode: bloggerReport)",
            "type": "array",
            "description": "Which reports to get for each blogger; each report is one record and one detail charge. Notes rate: performance of the latest notes, reach by source. Core data: daily impressions, reads and engagements. Data summary: activity, invitations, costs and rankings. Followers summary: active and engaged follower figures. Followers profile: gender, age, interests, provinces, cities, devices. Followers history: follower count per day.",
            "items": {
              "type": "string",
              "enum": [
                "notesRate",
                "coreData",
                "dataSummary",
                "fansSummary",
                "fansProfile",
                "fansHistory"
              ],
              "enumTitles": [
                "Notes rate",
                "Core data",
                "Data summary",
                "Followers summary",
                "Followers profile",
                "Followers history"
              ]
            },
            "default": [
              "notesRate",
              "coreData",
              "dataSummary",
              "fansSummary",
              "fansProfile",
              "fansHistory"
            ]
          },
          "reportDateRange": {
            "title": "Date range (mode: bloggerReport)",
            "enum": [
              "30",
              "90"
            ],
            "type": "string",
            "description": "Days covered by the notes rate, core data and followers history reports. For followers history the longer range is 60 days, not 90.",
            "default": "30"
          },
          "noteScope": {
            "title": "Note scope (mode: bloggerReport)",
            "enum": [
              "organic",
              "sponsored"
            ],
            "type": "string",
            "description": "Count the blogger's regular notes or their sponsored notes in the notes rate, core data and data summary reports.",
            "default": "organic"
          },
          "notes": {
            "title": "Notes (mode: noteReport)",
            "type": "array",
            "description": "Note IDs (24 characters) or Xiaohongshu note links, e.g. https://www.xiaohongshu.com/explore/6ad99263000000002c011c49. One note report per entry.",
            "items": {
              "type": "string"
            }
          },
          "notesSort": {
            "title": "Sort notes by (mode: bloggerNotes)",
            "enum": [
              "latest",
              "reads",
              "engagement"
            ],
            "type": "string",
            "description": "Order of each blogger's notes.",
            "default": "latest"
          },
          "notesType": {
            "title": "Note type (mode: bloggerNotes)",
            "enum": [
              "all",
              "sponsored",
              "picture",
              "video"
            ],
            "type": "string",
            "description": "Which of each blogger's notes to list.",
            "default": "all"
          },
          "liveNickname": {
            "title": "Streamer name (mode: liveSearch)",
            "type": "string",
            "description": "Only streamers whose name contains this text. Leave empty to list streamers without a filter."
          },
          "board": {
            "title": "Board (mode: contentSquare)",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "7",
              "8"
            ],
            "type": "string",
            "description": "Which ranking of the marketplace's content square to read. Trending is the whole platform; the others rank notes by marketing goal.",
            "default": "1"
          },
          "squareKeyword": {
            "title": "Keyword (mode: contentSquare)",
            "type": "string",
            "description": "Only notes matching this keyword, in Chinese. The marketplace matches loosely, so results include related topics, not only the exact word. Leave empty for the whole board."
          },
          "squareDateRange": {
            "title": "Days (mode: contentSquare)",
            "enum": [
              "3",
              "7",
              "14",
              "30"
            ],
            "type": "string",
            "description": "Period the board ranks notes over.",
            "default": "7"
          },
          "includeDaily": {
            "title": "Include daily series (mode: keyword)",
            "type": "boolean",
            "description": "Also deliver, for each keyword, one extra record with about 91 days of daily figures (type keywordDaily). Charged as a detail event.",
            "default": false
          },
          "includeRelated": {
            "title": "Include related words (mode: keyword)",
            "type": "boolean",
            "description": "Also deliver, for each keyword, one extra record with its up to 50 + 50 related search words (type keywordRelated). Charged as a detail event.",
            "default": false
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum number of items to return in total for this run. You are charged per item returned. In modes bloggerNotes and similarBloggers the limit applies to each blogger; similarBloggers comes in pages of 4 (rounded up) and lists at most 8 per blogger. In mode contentSquare it is at most 100 (all the marketplace shows per board). Blogger reports and note reports return one record per report or note, so the limit rarely matters there.",
            "default": 20
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}