# Changelog of Douyin Scraper (`ecommerce_leads/douyin-scraper`) Actor

- **URL**: https://apify.com/ecommerce\_leads/douyin-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/ecommerce\_leads/douyin-scraper.md

## Changelog

### 1.3 — runnable default input

The default input opened on ⬇️ Download Douyin videos with an empty link list,
so a run started without touching the form failed with "Add at least one
Douyin video link" — including the automated daily quality run.

- **The Douyin video links field now ships with one example link**, so the
  default input runs end to end and the form shows the expected link format.
  Only this one field is pre-filled, and only because the default mode reads
  it — the other modes' fields stay empty, as of 1.1.

### 1.2 — Overview works for every Douyin mode

The Overview tab listed video-only columns (`aweme_id`, `desc`, `digg_count`),
and a dataset view's field list is a strict whitelist — so a Douyin profile,
trend, keyword or mini-drama run showed one lonely `type` cell with all its
real data stripped out of the view.

- **Overview now has columns that mean something for every Douyin row type:**
  `summary`, `creator`, `count`, `douyin_id`, `link`. A Douyin profile shows
  its nickname and follower count, a Douyin trend its word and hot value, a
  Douyin comment its text and likes.
- Rows keep every one of their own native fields — this only adds a shared
  summary on top, so the per-type views are unchanged.
- Rows for Douyin items that failed now show the failed input in Overview
  instead of an empty line.

### 1.1 — clearer mode handling

The input form shows every mode's fields at once, because Apify input schemas
have no way to show or hide a field based on another field's value. That made
one mistake easy and invisible: paste Douyin video links, leave the mode on
👤 Douyin profile, and the run succeeds while silently ignoring the links.

- **The run now warns before it scrapes** when the selected mode ignores a
  field you filled in, naming the field and the mode that would have used it.
- **Section captions name their mode** — "⬇️ Download — Douyin video links",
  "Read ONLY when the mode above is ⬇️ Download Douyin videos."
- **Removed the sample values** that shipped pre-filled in every mode's
  fields. They made the form look like it would act on all of them at once;
  the examples now live in each field's description instead.

### 1.0 — first release

Douyin Scraper with nine modes, all verified against live Douyin:

- **Download Douyin videos** — watermark-free MP4 URLs from any Douyin link
  format (full link, `v.douyin.com` short link, share caption, bare ID).
  Returns both the clean stream and the watermarked one, and says which is
  which via `download_is_watermark_free`.
- **Douyin comments** — top-level Douyin comments with likes, reply counts and
  IP region.
- **Douyin profiles** — creator stats, followers, total likes, bio.
- **Douyin trending** — 7 Douyin hot-search boards.
- **Douyin feed** — 16 Douyin category channels.
- **Related Douyin videos**, **Douyin keyword suggestions**, **Douyin
  mini-dramas**, **Douyin translation**.

Pay-per-event pricing at $1 per 1,000 list results; $0.01 for single-result
Douyin endpoints (download, profile, translate). Items Douyin refuses are
written to the dataset with an `error` field and are never charged.

#### Known Douyin-side restrictions at release

Douyin currently returns an empty response for these to anonymous sessions,
on every IP. Both degrade with a warning and charge nothing:

- comment replies (`includeReplies`)
- a creator's video list (`maxProfileVideos`)
