raw.xiaohongshu.searchXiaohongshu (RedNote) note search
https://api.qovia.ai/v1/raw/xiaohongshu/searchSearch Xiaohongshu notes by keyword, 20 a page. data holds the platform's original search result: items (each with model_type and note; a note has id, xsec_token, title, desc, type, liked_count, comments_count, collected_count, shared_count, timestamp, images_list, video_info_v2, user and so on) and the platform's other fields, unrenamed, unfiltered and unconverted; result items that are not notes (model_type other than note) are kept as they come, and only notes are charged. Sort by relevance, newest, most liked, most commented or most saved; filter by note type and publish time. Page with page; the response has no has_more, so go on until a page comes back empty (not charged).
Typical uses: Tracking trends and topics, monitoring keywords and following competitors.
- Price
- $0.005 / call$5 per 1k · fixed price
- Billing
- Charged only for successful, non-empty resultsthe charge is in meta.charged_usd
- Scope
raw:xiaohongshuThe API key needs this scope- Rate limit
- NoneNo per-account or per-endpoint request limit
Parameters
Only these parameters are accepted; any other one returns 400.
keywordSearch keyword
Max 50 charsPattern\SExample
咖啡pagePage number, from 1; stop when a page comes back empty
Default1Range1–50sortOrder: general (relevance, the default), latest, most_liked, most_commented or most_saved
DefaultgeneralOne ofgeneral · latest · most_liked · most_commented · most_savednote_typeNote type: all (the default), video or image notes
DefaultallOne ofall · video · imagenote_timePublished within: all (the default), a day, a week, a month or a year
DefaultallOne ofall · day · week · month · year
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.
Errors
| code | HTTP | Billing | Description |
|---|---|---|---|
scope_denied | 403 | Not charged | This API key lacks the scope the endpoint requires. |
endpoint_unavailable | 503 | Not charged | The endpoint is not available right now (no data source connected yet, or no price configured); nothing ran. |
invalid_params | 400 | Not charged | The parameters failed validation: a required one is missing, a type or format is wrong, an array has more items than allowed, 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: …. |
insufficient_balance | 402 | Not charged | The balance cannot pay for this call; top up first. |
upstream_busyRetryable | 503 | Refunded | The data source is busy or cooling down; refunded. Retry after Retry-After. |
upstream_timeout | 504 | Refunded | The data source timed out; refunded. |
upstream_error | 502 / 503 | Refunded | The data source failed; refunded. |
upstream_rejected | 400 | Refunded | The data source rejected these parameters (well-formed, but not accepted); refunded. |
not_found | 404 | Refunded | The data source has no such item (deleted, or the ID does not exist); refunded. |
reservation_expired | 504 | Refunded | The 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.
Needs an account with a balance; playground calls are billed like API calls.