For AI

Endpoints by data type

Hashtag posts API

4 endpoints on 4 platforms return hashtag posts as the same Post object. The public posts filed under one hashtag or topic, a page at a time, each with its text, author, counts and time posted. A call costs from $0.002 to $0.02, each endpoint at its own price; a failed call is free.

Hashtag posts · on each platform

PlatformEndpointPathA pagePrice
InstagramInstagram hashtag postsGET /v1/instagram/hashtags/posts/list10$0.004 per call · about 10 posts per page
DouyinDouyin hashtag videosGET /v1/douyin/hashtags/videos/list10$0.002 per call · about 10 videos per page
Xiaohongshu (RedNote)Xiaohongshu topic notesGET /v1/xiaohongshu/topics/notes/list10$0.02 per call · about 10 notes per page
TikTokTikTok hashtag videosGET /v1/tiktok/hashtags/videos/list20$0.002 per call · about 20 videos per page

from $0.002 to $0.02 a call, each endpoint at its own price. A call that fails costs nothing.

The object it returns: Post

Every endpoint above returns these fields with the same names and types. A field a platform does not show comes back null and is named in meta.unavailable.

FieldTypeMeaning
idstringPost ID on the platform.
urlstringLink to the post.
typestringWhat kind of post it is.
titlestring | nullTitle, where the platform has one (videos, notes, articles).
textstringCaption, body or description as plain text; articles come as Markdown.
langstring | nullLanguage code, as reported or detected.
published_atstring | nullWhen it was published, ISO 8601 in UTC; null only where the source gives no time (wechat_mp.articles.metrics, wechat_channels.videos.metrics, youtube.channels.videos.list with type=short), then listed in meta.unavailable.
authorAccountRefWho posted it.
metricsMetricsCounts at fetch time; a count the platform hides is null.
imagesstring[] | nullImage URLs for image posts and notes.
hashtagsstring[] | nullHashtags or topics, without the # sign.
extobjectPlatform-specific extras. Only returned with view=full.

The same call on two platforms

Same parameters, same paging, same response shape. Only the path changes.

cURL
# Instagram
curl -G "https://api.okdata.online/v1/instagram/hashtags/posts/list" \
  -H "Authorization: Bearer $OKDATA_API_KEY" \
  --data-urlencode 'id=nasa'

# Douyin
curl -G "https://api.okdata.online/v1/douyin/hashtags/videos/list" \
  -H "Authorization: Bearer $OKDATA_API_KEY" \
  --data-urlencode 'id=7495235888088090635'

What people use it for

  • See what people actually post under a campaign hashtag, not just how many posts it has.
  • Find creators who use a niche tag before you approach them.
  • Collect examples of a format or a trend for a content brief.

Questions

Do I get every post under a hashtag?
Usually not. Platforms show a selection of posts under a tag, often not in time order, and the endpoint returns what the platform shows. Each endpoint page says how its list is built.
How is this different from keyword search?
Search matches words anywhere in a post and ranks by the platform’s own relevance. A hashtag list holds only posts that carry the tag, which is closer to what the authors meant their posts to be about.
Which platforms have it?
Only platforms with public hashtag or topic pages can offer it, and endpoints are added one platform at a time. The table above lists the ones you can call now.

Connect once, then just ask.

Every new key comes with $0.10 to try it. One sentence connects your agent.

Start free
Connect your AI

Paste this into your agent

Read https://okdata.online/agents.md and set up okdata for me; my key is in the OKDATA_API_KEY environment variable.

Claude Code, Cursor, Codex and other agents that can open a link set themselves up from it.

MCP serverhttps://api.okdata.online/mcp