# Why do some Douyin links say /note/ instead of /video/?

> Douyin photo posts (图文) live at /note/ links but use the same 19-digit ID as videos. How to tell them apart in links and in API data, and what you get back for each.

Canonical page: https://okdata.online/answers/douyin-note-vs-video-links/

**Short answer: **A /note/ link is a Douyin photo post (图文): a set of images, usually with music, instead of a video. It uses the same aweme_id numbering, so okdata's Douyin video detail takes a /note/ link or its ID like any other and returns type image with every image URL, for $0.002.

Douyin has two kinds of posts. A video post opens at `douyin.com/video/<id>`. A photo post, which Douyin calls 图文, is a swipeable set of images with a caption and usually a soundtrack, and it opens at `douyin.com/note/<id>`. The number after `/note/` is an ordinary aweme_id from the same 19-digit sequence as videos (see [aweme_id and modal_id](/answers/douyin-aweme-id-modal-id/)), so a photo post can be fetched, searched and commented on like a video. What breaks is code that assumes every post has a playable video: link parsers that only match `/video/`, downloaders that look for a video URL and find a list of images, spreadsheets that expect a duration. Share links (`v.douyin.com/...`) hide the difference until they redirect.

## How to tell them apart

| | Video post | Photo post (图文) |
|---|---|---|
| Web link | `/video/<id>` | `/note/<id>` |
| `type` in okdata data | `video` | `image` |
| `images` | null | every image URL, in order |
| Likes, comments, shares, saves | yes | yes, same fields |
| `metrics.views` | null (Douyin hides plays) | null |

Some photo posts are live photos (实况): each picture also has a short clip behind it. okdata returns the still image for each; the clips are not included.

## How the API handles both

[Douyin video detail](/apis/douyin/videos/get/) takes either link, a short link that redirects to either, or the bare ID. You do not need to know the type in advance; read `type` in the answer. [Douyin video search](/apis/douyin/videos/search/) returns both kinds mixed in one list, so filter on `type` if you only want one. [Video comments](/apis/douyin/videos/comments/list/) work the same for a photo post's ID.

| Task | Calls | Cost |
|---|---|---|
| One /note/ link to images, caption and counts | 1 | $0.002 |
| 200 mixed links | 200 | $0.40 |
| First comment page of a photo post | 1 | $0.002 |

## Example

```python
import os, requests

r = requests.get(
    "https://api.okdata.online/v1/douyin/videos/get",
    headers={"Authorization": f"Bearer {os.environ['OKDATA_API_KEY']}"},
    params={"url": "https://www.douyin.com/note/7431266008815910153"},
    timeout=60,
)
post = r.json()["data"]["item"]
if post["type"] == "image":
    print(len(post["images"]), "images:", post["images"][:2])
else:
    print("video post", post["url"])
print(post["text"], post["metrics"]["likes"])
```

With `view=full`, `ext.music` holds the soundtrack title, which photo posts usually have.

## Limits

- Image URLs are signed Douyin CDN links with an `x-expires` time. Download what you need soon after the call.
- No video file URL is returned for either kind of post.
- Douyin does not publish play counts for other people's posts, photo or video; see [Douyin play counts](/answers/douyin-video-play-count/).
- A deleted post returns `not_found` and is not charged.

## Endpoints used

- [Douyin video detail](https://okdata.online/apis/douyin/videos/get/) `douyin.videos.get`: $0.002 per call
- [Douyin video search](https://okdata.online/apis/douyin/videos/search/) `douyin.videos.search`: $0.02 per call · about 20 videos per page
- [Douyin video comments](https://okdata.online/apis/douyin/videos/comments/list/) `douyin.videos.comments.list`: $0.002 per call · about 20 comments per page

## More about Douyin

- [Douyin API](https://okdata.online/apis/douyin/)
- [Douyin API in Python: videos, profiles and comments (2026)](https://okdata.online/guides/douyin-api-python/)
- [How to export Douyin video comments in bulk](https://okdata.online/guides/douyin-video-comments/)
- [How to find Douyin Xingtu creators and get their rate cards](https://okdata.online/guides/douyin-xingtu-creator-rates/)
- [What is Douyin's a_bogus parameter, and do I need to generate it to get Douyin data?](https://okdata.online/answers/douyin-a-bogus-signature/)
- [How do I export Douyin video comments for sentiment analysis?](https://okdata.online/answers/douyin-export-comments-sentiment/)
- [How do I monitor brand mentions on Douyin and get new videos every day?](https://okdata.online/answers/douyin-keyword-monitoring/)
- [My Douyin scraper stopped working after a signature change. Should I fix it or switch to an API?](https://okdata.online/answers/douyin-scraper-broke-signature/)
- [How do I write a Claude Code skill that pulls Douyin comments or Xiaohongshu notes?](https://okdata.online/answers/agent-skill-social-media-data/)
- [How to collect Douyin comments: API, crawler or no-code (2026)](https://okdata.online/compare/douyin-comment-scraping/)
- [Douyin data APIs: official vs third-party vs open-source (2026)](https://okdata.online/compare/douyin-data-apis/)
- [Official platform APIs vs third-party data APIs (2026)](https://okdata.online/compare/official-apis-vs-data-apis/)
- [Scraping it yourself vs a per-call data API: cost, upkeep and risk](https://okdata.online/compare/scraping-vs-data-api/)
- [How to choose a social media data API (2026)](https://okdata.online/compare/social-media-data-apis/)

## Sources

- [Live Photo posts: each image has its own MP4 under images[i].video (Douyin_TikTok_Download_API issue #792)](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/issues/792) (read 2026-11-12)
- [Video-only download still trips over photo posts (TikTokDownloader issue #567)](https://github.com/JoeanAmier/TikTokDownloader/issues/567) (read 2026-11-12)
- [TikTokDownloader README: videos, photo sets (图集) and live photos listed separately](https://github.com/JoeanAmier/TikTokDownloader) (read 2026-11-12)

Where people asked this (read 2026-11-12): 

- https://github.com/Evil0ctal/Douyin_TikTok_Download_API/issues/792
- https://github.com/JoeanAmier/TikTokDownloader/issues/567

Updated 2026-11-12
