raw.douyin.creatorDouyin creator profile
LiveBeta: the endpoint and its response fields may still changeFree quota applies
GET
https://api.qovia.ai/v1/raw/douyin/creatorCreator profile with followers, likes, post count and verification.
- Price
- $0.0015 / call$1.5 per 1k$1 per 1k after 5M a month
- Billing
- Charged only for successful, non-empty resultsfree quota first
- Scope
raw:douyinThe API key needs this scope- Rate cap
- 2 req/s globalAcross all users, plus your per-minute limit
Parameters
Sent as query parameters
Only these parameters are accepted; any other one returns 400.
user_idThe user's sec_uid (starts with MS4wLjABAAAA; Douyin rejects numeric uids)
Pattern^MS4wLjABAAAA[0-9A-Za-z_-]{20,100}$Example
MS4wLjABAAAAAKgMNYSx2pL3ARundki9oB8pmdvX9hVgujii5bnZUXs
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 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_limitedRetryable | 429 | Not charged | Over the account's per-minute limit (sliding 60-second window); wait for Retry-After. |
too_many_unbilledRetryable | 429 | Not charged | In 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. |
endpoint_busyRetryable | 429 | Not charged | The endpoint's per-second capacity across all users is full; retry in 1 second. This does not count toward your per-minute limit. |
insufficient_balance | 402 | Not charged | The balance cannot pay for this call (the free quota is used up, or the endpoint does not use it). |
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.
Call it from your browser
Needs an account; playground calls are billed like API calls and use the free quota first too.