{
  "openapi": "3.0.1",
  "info": {
    "title": "Weibo Monitor & Scraper - Hot Search, Comments",
    "description": "Weibo (微博) scraper: keyword search, user posts, fans and following lists, comments, hot search and hot feed. Add your own cookie for deep results, or run without login. Monitor mode returns only new posts. $4.49 per 1,000 items.",
    "version": "0.1",
    "x-build-id": "8ntBp0B8gQzHtPmZT"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/reportable_broth~weibo-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-reportable_broth-weibo-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/reportable_broth~weibo-scraper/runs": {
      "post": {
        "operationId": "runs-sync-reportable_broth-weibo-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/reportable_broth~weibo-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-reportable_broth-weibo-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",
        "properties": {
          "searchKeywords": {
            "title": "Search keywords",
            "type": "array",
            "description": "Chinese, English or hashtags. One search per line.",
            "items": {
              "type": "string"
            }
          },
          "maxPostsPerKeyword": {
            "title": "Max posts per keyword",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Without a login cookie Weibo returns about 20 posts per keyword (the first page).",
            "default": 50
          },
          "searchSort": {
            "title": "Search order",
            "enum": [
              "latest",
              "top"
            ],
            "type": "string",
            "description": "Latest is best for monitoring.",
            "default": "latest"
          },
          "users": {
            "title": "Users",
            "type": "array",
            "description": "User ID (2803301701), profile URL (weibo.com/u/2803301701 or weibo.com/rmrb) or @name.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "includeProfile": {
            "title": "Include user profile",
            "type": "boolean",
            "description": "Followers, following, post count, verification, bio, location.",
            "default": true
          },
          "maxPostsPerUser": {
            "title": "Max posts per user",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Newest first. Without a login cookie you get the latest ~10.",
            "default": 20
          },
          "maxFans": {
            "title": "Max fans per user",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Accounts that follow the user. Without a login cookie you get the first 20.",
            "default": 0
          },
          "maxFollowing": {
            "title": "Max following per user",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Accounts the user follows. Without a login cookie you get the first 20.",
            "default": 0
          },
          "postUrls": {
            "title": "Post URLs",
            "type": "array",
            "description": "weibo.com/<uid>/<id>, m.weibo.cn/detail/<id>, or the post ID. Returns the post and its comments.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "maxCommentsPerPostUrl": {
            "title": "Max comments per post URL",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Comments work without login and can go deep.",
            "default": 100
          },
          "maxCommentsPerFoundPost": {
            "title": "Comments for search and user posts",
            "minimum": 0,
            "maximum": 2000,
            "type": "integer",
            "description": "Also fetch this many comments for every post found by search or user timelines. 0 = off.",
            "default": 0
          },
          "commentsSort": {
            "title": "Comment order",
            "enum": [
              "hot",
              "latest"
            ],
            "type": "string",
            "description": "Order of comments.",
            "default": "hot"
          },
          "hotSearch": {
            "title": "Hot search list (热搜)",
            "type": "boolean",
            "description": "The ~50 real-time trending topics with heat values.",
            "default": false
          },
          "hotFeedPosts": {
            "title": "Hot feed posts (热门)",
            "minimum": 0,
            "maximum": 500,
            "type": "integer",
            "description": "Posts from Weibo's trending feed. 0 = off.",
            "default": 0
          },
          "fullText": {
            "title": "Full text of long posts",
            "type": "boolean",
            "description": "Long posts are cut off with '...全文'. This fetches the full text (one extra request per long post).",
            "default": true
          },
          "onlyNew": {
            "title": "Only new items (monitor mode)",
            "type": "boolean",
            "description": "Put the Actor on a schedule: each run returns only posts, comments and fans that earlier runs haven't returned. You only pay for new items.",
            "default": false
          },
          "monitorStoreName": {
            "title": "Monitor memory name",
            "type": "string",
            "description": "Runs with the same inputs share memory automatically. Set a name to share it on purpose."
          },
          "accountMode": {
            "title": "Login",
            "enum": [
              "own",
              "none"
            ],
            "type": "string",
            "description": "Weibo only shows page 2+ of search, user posts, fans and following to logged-in users. Add your cookie below for deep results. Using our accounts (no setup): coming soon.",
            "default": "own"
          },
          "cookie": {
            "title": "Your Weibo cookie (only for 'Use my own cookie')",
            "type": "string",
            "description": "Unlocks page 2+ of search, user posts, fans and following. Log in at m.weibo.cn, copy the Cookie request header (see README). Stored encrypted; only sent to Weibo."
          },
          "requestGapSecs": {
            "title": "Seconds between logged-in requests",
            "minimum": 0.3,
            "maximum": 10,
            "type": "number",
            "description": "Slower is safer for your account.",
            "default": 0.8
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Anonymous requests rotate IPs. Logged-in requests keep one IP for the whole run.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}