Post object
81 endpoints on 19 platforms return the Post object with the same 28 fields, so code written for one platform reads the others unchanged. A call costs $0.0003 to $0.0200.
A Post is one piece of published content: a video, a note, a tweet, an article, a message in a channel. Every platform's posts come back with the same fields, so text, author, published_at and the likes in metrics sit in the same place on Douyin and on YouTube.
A post's author is the account that published it, with its id and username; comments under it point back with post_id, and so does the transcript of a video post. On X (Twitter) a reply is itself a post, and its post_id, parent_id and root_id say which thread it hangs in.
Fields
A field the platform cannot give is left out of the item and named in meta.unavailable. It is never filled with a guess or a zero.
ID; pass it unchanged to the get endpoint
Link that opens the post
Content format: video image text article
Title
Body text
Language of the text
When it was published
Author
Author's account ID
Author's handle
Author's display name
Author's avatar
Whether the author is verified
Author's follower count
Engagement counts
Likes
Comments
Shares
Saves
Views
Reposts
Image addresses
Hashtags, without the #
Accounts mentioned in the text
Account ID
Handle
Display name
Whether the author pinned it
ID of the thread's root post when this is a reply; otherwise null
ID of the item it replies to directly; otherwise null
ID of the first-level reply its thread hangs under
Where each number comes from
The same field name does not always mean the same act on every platform. This table says which of the platform's own numbers goes into the field.
idMade of the __biz, mid and idx of the article's long link; an article is fetched by its url, not by thisWeChat Official AccountsMade of the __biz, mid and idx of the long link givenWeChat Official AccountsThe encrypted ID WeChat Search gives the video (starting with export/), as given: not the numeric ID the Channels video and comment endpoints take, and not promised to be the same for the same video in a later searchWeChat ChannelsAn article: made of the __biz, mid and idx of its long link, the same as the Official Account article list gives, and an article is fetched by its url; a video: the encrypted ID WeChat Search gives it (starting with export/), as given, not the numeric ID the Channels video endpoint takes, and not promised to be the same for the same video in a later searchWeChat SearchThe channel's handle and the message's number, as in telegram/401; pass it unchanged to the message endpointTelegramurlThe author's profile page opened on this videoDouyinThe article's link; a Channels video has no web link, so nullWeChat Searchtypevideo for a post that carries a video, image for one with pictures only, text otherwiseYouTubetitleThe title as the result card shows it, without emojiXiaohongshu (RedNote)The article's title, without the keyword highlighting; a video has no title apart from its description, so nullWeChat SearchtextThe video's descriptionYouTubeThe excerpt the result card shows, not the whole text; the note itself has all of itXiaohongshu (RedNote)The first 100 characters of the text; the note itself has all of itXiaohongshu (RedNote)The article's digest, not its whole textWeChat Official AccountsThe video's description, without the keyword highlightingWeChat ChannelsAn article's digest (not its whole text) or a video's description, without the keyword highlightingWeChat SearchThe pin's descriptionPinterestpublished_atThe platform gives the day of publication only (a calendar day in China time), written as midnight UTC of that date: not the moment it was publishedDouyinauthor.usernameHandle of the channel the message is inTelegramauthor.nameThe account's name; WeChat Search gives no account IDWeChat ChannelsThe name of the Official Account or Channels account; WeChat Search gives no account IDWeChat Searchauthor.avatar_urlThe Channels account's avatar; an article's result has none, so nullWeChat Searchauthor.verifiedWhether whoever pinned it carries the platform's verified mark; null when it does notPinterestauthor.followersThe author's follower countLinkedInmetrics.likesLikes; from a thousand up the platform shows a rounded numberYouTubeAll reactions together (like, love, haha and the rest)FacebookThe likes the card shows; one written like 1.4万 is approximate and 10万+ a lower bound; null when the card shows no countWeChat ChannelsThe likes a video's card shows, one written like 1.4万 approximate and 10万+ a lower bound, null when the card shows no count; an article's result has no counts, so nullWeChat SearchAll reactions together (like, celebrate, support and the rest)LinkedInUpvotesZhihuAll reactions togetherPinterestmetrics.commentsRepliesX (Twitter)Direct repliesThreadsComments on the content, other people's copies of the pin includedPinterestmetrics.sharesTimes it was shared (sent on)Threadsmetrics.favoritesBookmarksX (Twitter)The card's other count, the same count as the saves of the Channels video lists; approximate, lower bound and null as for likesWeChat ChannelsA video card's other count, the same count as the saves of the Channels video lists, approximate, lower bound and null as for likes; null for an articleWeChat SearchTimes this pin was saved on; the total for the same content is in ext.savesPinterestmetrics.viewsViews of the video; null on a post that is not a videoFacebookReads; above 100,000 the platform says only "100k+", and this is a lower boundWeChat Official AccountsViews; the popular order sorts by itBilibiliReads; null on a post that shows no read countWeiboViews; from a thousand up the platform shows a rounded numberTelegrammetrics.repostsRetweets; quotes are counted apart, in ext.quotesX (Twitter)RepostsWeiboZhihuReposts; quotes are counted apart, in ext.quotesThreadsimagesThe video's coverYouTubeThe one picture the search matched, at its full size; the address expires. The note's other pictures come with the note itselfXiaohongshu (RedNote)The pin's picture at full sizePinteresthashtagsThe post's topic tag; a post has at most oneThreadsis_pinnedWhether it is pinned on the profile asked forInstagrampost_idID of the conversation's root postX (Twitter)What a platform cannot give
A platform stands against a field when none of its endpoints gives it.
urlWeChat ChannelstypeLinkedInKuaishoutitleTikTokInstagramFacebookWeChat ChannelsWeiboLinkedInThreadsKuaishouTelegramlangYouTubeInstagramFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliWeiboLinkedInKuaishouZhihuTelegramPinterestauthor.idWeChat SearchLinkedInTelegramauthor.usernameWeChat ChannelsWeChat SearchBilibiliWeiboauthor.nameRedditauthor.avatar_urlTelegramauthor.verifiedTikTokYouTubeDouyinRedditWeChat Official AccountsWeChat ChannelsWeChat SearchLinkedInZhihuTelegramauthor.followersYouTubeInstagramXiaohongshu (RedNote)RedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchThreadsKuaishouTelegrammetrics.likesRedditTelegrammetrics.commentsWeChat SearchTelegrammetrics.sharesYouTubeInstagramX (Twitter)WeChat SearchWeiboLinkedInZhihuTelegrammetrics.favoritesYouTubeInstagramRedditFacebookWeiboLinkedInThreadsTelegrammetrics.viewsXiaohongshu (RedNote)RedditWeChat ChannelsWeChat SearchLinkedInPinterestmetrics.repostsTikTokYouTubeInstagramDouyinXiaohongshu (RedNote)RedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliLinkedInKuaishouTelegramPinterestimagesTikTokWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliKuaishouhashtagsYouTubeInstagramRedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchLinkedInKuaishouZhihuTelegramPinterestmentions[].idYouTubeInstagramDouyinRedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliWeiboLinkedInThreadsKuaishouZhihuTelegramPinterestmentions[].usernameTikTokYouTubeInstagramDouyinXiaohongshu (RedNote)RedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliWeiboLinkedInThreadsKuaishouZhihuTelegramPinterestmentions[].nameTikTokYouTubeInstagramDouyinRedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliWeiboLinkedInThreadsKuaishouZhihuTelegramPinterestis_pinnedYouTubeX (Twitter)FacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliLinkedInKuaishouTelegramPinterestpost_idTikTokYouTubeInstagramDouyinXiaohongshu (RedNote)RedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliWeiboLinkedInThreadsKuaishouTelegramPinterestparent_idTikTokYouTubeInstagramDouyinXiaohongshu (RedNote)RedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliWeiboLinkedInThreadsKuaishouTelegramPinterestroot_idTikTokYouTubeInstagramX (Twitter)DouyinXiaohongshu (RedNote)RedditFacebookWeChat Official AccountsWeChat ChannelsWeChat SearchBilibiliWeiboLinkedInThreadsKuaishouZhihuTelegramPinterestmeta.unavailable.Endpoints that return Post
The number beside each platform is how many of its endpoints return it.
Example
One item from tiktok.hashtags.videos.list, as recorded 2026-10-12 18:47 UTC. Names, text, IDs and links are examples; the figures are as recorded.
{
"id": "7324847345040857368",
"url": "https://www.tiktok.com/@hannah.w.photo/video/7324847345040857368",
"type": "video",
"text": "Weekend hiking from last night, no filter. Settings in the comments.",
"lang": "en",
"published_at": "2026-10-06T15:16:22.000Z",
"author": {
"id": "6049772375495468810",
"username": "hannah.w.photo",
"name": "Hannah Weiss",
"avatar_url": "https://p16-sign-va.tiktokcdn.com/tos-maliva-avt-0068/523134e9dfaaa0b34294~c5_100x100.jpeg"
},
"metrics": {
"likes": 10289,
"comments": 101,
"shares": 364,
"favorites": 852,
"views": 86424
},
"hashtags": [
"outdoors",
"weekendvibes",
// … 3 more
],
"mentions": []
}