Skip to content
Weibo search
raw.weibo.search

Weibo search

LiveBeta: the endpoint and its response fields may still changeNo free quota
GEThttps://api.qovia.ai/v1/raw/weibo/search

Keyword search for Weibo posts, optionally within a range of publish dates (Beijing time, whole days), only hot, original, verified-user, media or viewpoint posts, or only posts with images, videos, music or links; the same records as post detail (same ids), with text that may be cut (extra.truncated) and no interaction counts. Pages hold a varying number of posts (up to about 20); page by number, up to 50 pages, and stop at an empty page. No results answers empty and is not charged.

Price
$0.001 / call$1 per 1k · fixed price
Billing
Charged only for successful, non-empty resultsno free quota
Scope
raw:weiboThe API key needs this scope
Rate cap
Account limit onlyYour per-minute limit

Parameters

Sent as query parameters

Only these parameters are accepted; any other one returns 400.

keywordstringRequired

Search keyword

Max 100 charsPattern\S

Example长征

start_datestring

First publish date, included (Beijing time, YYYY-MM-DD); pass it with end_date

Pattern^20[0-9]{2}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$

Example2026-10-20

end_datestring

Last publish date, included (Beijing time, YYYY-MM-DD); pass it with start_date

Pattern^20[0-9]{2}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$

Example2026-10-21

typestring · enum

Only: all, hot, original, verified (verified users), media or viewpoint; all when left out

One ofall · hot · original · verified · media · viewpoint
containsstring · enum

Containing: all, image, video, music or link; all when left out

One ofall · image · video · music · link
pageinteger

Page number, from 1, at most 50

Default1Range1–50
  • start_date requires end_date
  • end_date requires start_date

Response

A success is HTTP 200 with the shared envelope: request_id, data (this endpoint's data, see the example) and meta (the charge). An empty result is also 200, with meta.empty true, not charged, and data may be an empty structure or null.

The response envelope in detail

Errors

Errors this endpoint can return
codeHTTPBillingDescription
scope_denied403Not chargedThis API key lacks the scope the endpoint requires.
endpoint_unavailable503Not chargedThe endpoint is not available right now (no data source connected yet, or no price configured); nothing ran.
invalid_params400Not chargedThe parameters failed validation: a required one is missing, a type or format is wrong, an unknown one was sent, or the POST body is not a JSON object. An error in one parameter starts with its name (item_id: …); a missing or unknown parameter starts with params: ….
rate_limitedRetryable429Not chargedOver the account's per-minute limit (sliding 60-second window); wait for Retry-After.
too_many_unbilledRetryable429Not chargedIn the last 10 minutes at least 50 of your calls to data sources, and over 80% of them, came back empty, not found or rejected; slow down.
insufficient_balance402Not chargedThe balance cannot pay for this call (the free quota is used up, or the endpoint does not use it).
upstream_busyRetryable503RefundedThe data source is busy or cooling down; refunded. Retry after Retry-After.
upstream_timeout504RefundedThe data source timed out; refunded.
upstream_error502 / 503RefundedThe data source failed; refunded.
upstream_rejected400RefundedThe data source rejected these parameters (well-formed, but not accepted); refunded.
not_found404RefundedThe data source has no such item (deleted, or the ID does not exist); refunded.
reservation_expired504RefundedThe call took too long and was refunded automatically; no data is returned.

Any request can also fail authentication: 401 invalid_api_key, 403 account_disabled, 429 too_many_auth_failures.

Every error code
Call it from your browser

Needs an account; playground calls are billed like API calls.