What are aweme_id and modal_id on Douyin, and what is a v.douyin.com link?
aweme_id is a Douyin post's ID, a long string of digits. modal_id is the same ID in a web address when a video opens over a feed, a search or a profile. A v.douyin.com link is the app's short link. DataXAPI's video endpoints take the ID as id, or any of these links as url. DataXAPI reads Douyin with 36 endpoints, from $0.0020 a call; a failed call is not charged.
What each one is
A post's own page is https://www.douyin.com/video/<aweme_id>, or /note/<aweme_id> for an image post. As public open-source tools describe it, the ID is 19 digits and is to be kept as text, since it is beyond the integers JavaScript holds exactly. Made up, it looks like 1234567890123456789.
When the website opens a video over the feed, a search or an account's page, the address keeps that page and adds ?modal_id=<aweme_id>, as public open-source tools describe it and as DataXAPI has recorded.
What the app's share button copies is a share text with https://v.douyin.com/<code>/ in it. The code is not the ID; opening the link shows which video or profile it leads to.
What DataXAPI takes
douyin.videos.get, douyin.videos.comments.list and douyin.videos.metrics take the ID as id. As url they take, pasted as it is: the /video/ or /note/ link, a link with modal_id, the page a share opens on a phone (m.douyin.com or iesdouyin.com), a v.douyin.com link, or a whole share text with one of these in it.
A v.douyin.com link is opened once to see which video it leads to. A link that names two different posts, a post's page with another opened over it, is not taken.
Endpoints
Each with its price; every page has the parameters, the fields and a recorded response.
Sources
What this page says of other services is from their own pages and documents, read on 2026-10-29. Prices and features change: check the source before you decide.