{
  "openapi": "3.0.1",
  "info": {
    "title": "Weibo Scraper ✅ Posts, Comments, Reposts",
    "description": "Scrape Weibo (微博) by keyword or URL: posts, comments, profiles, and hot search. Plus the virality and audience graph other tools only show as counts: who reposted, who liked, followers, and following, each a full profile. No cookies, no login. Failed lookups are free.",
    "version": "1.0",
    "x-build-id": "zUNtEtV8Jp7AQAP7U"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/atomus~weibo-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-atomus-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/atomus~weibo-scraper/runs": {
      "post": {
        "operationId": "runs-sync-atomus-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/atomus~weibo-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-atomus-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",
        "required": [
          "searchType"
        ],
        "properties": {
          "searchType": {
            "title": "🎯 What to scrape (mode) / 抓取模式",
            "enum": [
              "search",
              "timeline",
              "post-detail",
              "comments",
              "reposts",
              "likes",
              "profile",
              "fans",
              "following",
              "trending"
            ],
            "type": "string",
            "description": "Choose the mode. 💲 Each mode is its own PAID event — the price is shown on every option below. Then fill ONLY the input field in the section for your mode. Prices are per result; post-list modes (comments, reposts, likes, fans, following, trending) bill a minimum of 2 results per target. // 选择模式。💲 每种模式为独立的付费事件，价格已标注在下方每个选项上；然后只需填写你所选模式对应分组里的输入字段。按结果计费；评论/转发/点赞/粉丝/关注/热搜每个目标最低计费2条。",
            "default": "search"
          },
          "keywords": {
            "title": "🔍 Keywords ($) / 关键词",
            "type": "array",
            "description": "💲 Billed post-scraped ($0.02 per post returned). One or more search terms, e.g. \"科技\" (tech), \"财经\" (finance). // 💲 按 post-scraped 计费（$0.02/条）。可填写一个或多个关键词。",
            "items": {
              "type": "string"
            }
          },
          "timeFilter": {
            "title": "🕒 Time range — FREE / 时间范围（免费）",
            "enum": [
              "all",
              "1d",
              "7d",
              "30d",
              "180d",
              "365d"
            ],
            "type": "string",
            "description": "Only for \"Keyword search\". FREE — restrict results to a recent time window, no extra charge (filtered server-side by Weibo, so you are billed only for the posts returned). // 仅用于「关键词搜索」，免费，按时间范围筛选，不额外计费（由微博服务端过滤，仅对返回的结果计费）。",
            "default": "all"
          },
          "searchScope": {
            "title": "🎯 Result scope — FREE / 结果范围（免费）",
            "enum": [
              "all",
              "hot",
              "original",
              "verified",
              "media",
              "viewpoint"
            ],
            "type": "string",
            "description": "Only for \"Keyword search\". FREE — restrict which posts are returned, no extra charge. // 仅用于「关键词搜索」，免费，限定返回的微博类型，不额外计费。",
            "default": "all"
          },
          "mediaType": {
            "title": "🎬 Media type — FREE / 媒体类型（免费）",
            "enum": [
              "all",
              "pic",
              "video",
              "music",
              "link"
            ],
            "type": "string",
            "description": "Only for \"Keyword search\". FREE — restrict results to posts containing a media type, no extra charge. // 仅用于「关键词搜索」，免费，按包含的媒体类型筛选，不额外计费。",
            "default": "all"
          },
          "postUrls": {
            "title": "🔗 Post URLs or IDs ($) / 微博链接或ID",
            "type": "array",
            "description": "💲 Paid per selected mode: post detail $0.04/post, comments $0.01/comment (min 2), reposts $0.012/repost (min 2), likes $0.01/like (min 2). Paste Weibo post URLs (https://weibo.com/<uid>/<mblogid>), m.weibo.cn/detail/<id> links, a base62 mblogid, or a numeric mid. // 💲 按所选模式计费：详情 $0.04/条，评论 $0.01/条（最低2），转发 $0.012/条（最低2），点赞 $0.01/条（最低2）。可粘贴微博链接、mblogid 或数字 mid。",
            "items": {
              "type": "string"
            }
          },
          "userUrls": {
            "title": "👤 Profile URLs or user IDs ($) / 用户主页链接或ID",
            "type": "array",
            "description": "💲 Paid per selected mode: timeline $0.02/post, profile $0.04/profile, fans $0.012/fan (min 2), following $0.01/user (min 2). Paste profile URLs (https://weibo.com/u/<uid>) or a bare numeric user id. Note: some accounts keep their fans/following lists private. // 💲 按所选模式计费：时间线 $0.02/条，资料 $0.04/个，粉丝 $0.012/个（最低2），关注 $0.01/个（最低2）。可粘贴主页链接或数字用户ID。部分账号的粉丝/关注列表不公开。",
            "items": {
              "type": "string"
            }
          },
          "maxItems": {
            "title": "💯 Max results per keyword/target ($) / 每个关键词或目标的最大结果数",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "How many results to return per keyword or target. 💲 Affects cost: per-item modes (search, timeline, comments, reposts, likes, fans, following, trending) bill per result, so a higher value costs more (post-list modes bill a minimum of 2 per target). Post detail and profile return one billed record per target regardless. // 每个关键词或目标返回的最大结果数。💲 影响费用：按条计费的模式（搜索/时间线/评论/转发/点赞/粉丝/关注/热搜）按结果数计费，数值越大费用越高（列表类每目标最低计费2条）；详情/资料每个目标只计一条记录。",
            "default": 20
          },
          "includeRankings": {
            "title": "📊 Also include the social ranking board ($) / 同时包含社会榜单",
            "type": "boolean",
            "description": "💲 PAID — in addition to the hot-search board, also return the social ranking board; the extra topics are billed as trend-scraped ($0.01/topic) within the same trend event. Off by default. // 💲 付费——在热搜榜之外额外返回社会榜单，额外条目按 trend-scraped 计费（$0.01/条），计入同一 trend 事件。默认关闭。",
            "default": false
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}