How to get WeChat Official Account article reads and likes
2 endpoints do it: WeChat Official Account articles → WeChat Official Account article stats. The worked example below is 11 calls and costs $0.22 in all; a failed call is not charged.
You get the reads, likes, recommends (推荐), shares, saves and comments of each recent article of a WeChat Official Account (公众号), as they stand when you call.
Step 1: WeChat Official Account articles
List the account's latest articles by its original ID (gh_…). Each item's url is the article's long link, and the next step takes it.
curl -G "https://api.dataxapi.com/v1/wechat_mp/accounts/articles/list" \ --data-urlencode "id=gh_13c97ab93ce8" \ -H "Authorization: Bearer $DATAXAPI_API_KEY"
from dataxapi import DataXAPI dx = DataXAPI() # reads DATAXAPI_API_KEY result = dx.wechat_mp.accounts.articles.list(id="gh_13c97ab93ce8") print(result["data"]["items"])
import { DataXAPI } from "@dataxapi/sdk";
const dx = new DataXAPI(); // reads DATAXAPI_API_KEY
const result = await dx.wechat_mp.accounts.articles.list({ id: "gh_13c97ab93ce8" });
console.log(result.data.items);dataxapi call wechat_mp.accounts.articles.list id=gh_13c97ab93ce8
{
"code": "ok",
"request_id": "882b7d3d-9a50-48d1-ba28-513bec440e40",
"data": {
"items": [
{
"id": "2651350693_1",
"url": "https://mp.weixin.qq.com/s/yEmemDFnwYkjLklz1HGeGz",
"type": "article",
"title": "实测一个月周末露营,结论有点意外",
"text": null,
"published_at": "2026-10-12T13:35:48.000Z",
"author": { "id": "gh_baa95f56a86c" }
},
// … 9 more
]
},
"page": {
"next_cursor": "c1.c3D9oI16A0J5E0SMD5JU_mAesJzXbexIUP2nOHbv",
"cursor_expires_at": "2026-10-12T20:02:58.000Z",
"has_more": true,
"returned": 10
},
"warnings": [],
"meta": {
"capability": "wechat_mp.accounts.articles.list",
"result_status": "complete",
"fetched_at": "2026-10-12T19:02:58.000Z",
"cached": false,
"replayed": false,
"unavailable": {
"lang": "capability",
"author.username": "capability",
"author.name": "capability",
"author.avatar_url": "capability",
"author.verified": "capability",
"author.followers": "capability",
"metrics": "capability",
"images": "capability",
"hashtags": "platform",
"mentions": "platform",
"is_pinned": "capability",
"post_id": "platform",
"parent_id": "platform",
"root_id": "platform"
},
"billing": {
"amount": "0.02",
"currency": "USD",
"balance_after": "9.98"
}
}
}From a response recorded 2026-10-12 19:02 UTC. Names, text and IDs are examples, and so are the links: none is the recorded one (the page shows no one's personal data); the figures are as recorded. Long lists are cut. The request ID, cursor and balance are made up.
WeChat Official Account articles · $0.0200 / a call · Parameters, fields and errors on the endpoint's page →
Step 2: WeChat Official Account article stats
Call the stats once for each article, with its long link as url. metrics.views is reads, metrics.likes is likes (点赞) and ext.recommends is recommends (推荐, once called 在看); metrics.shares, metrics.favorites and metrics.comments are shares, saves and comments.
curl -G "https://api.dataxapi.com/v1/wechat_mp/articles/metrics" \ --data-urlencode "url=https://mp.weixin.qq.com/s?__biz=MjM5MjAxNDM4MA==&mid=2667038683&idx=1&sn=0422127e651acd7f6cf6ef7e1cff04bc" \ -H "Authorization: Bearer $DATAXAPI_API_KEY"
from dataxapi import DataXAPI dx = DataXAPI() # reads DATAXAPI_API_KEY result = dx.wechat_mp.articles.metrics(url="https://mp.weixin.qq.com/s?__biz=MjM5MjAxNDM4MA==&mid=2667038683&idx=1&sn=0422127e651acd7f6cf6ef7e1cff04bc") print(result["data"]["item"])
import { DataXAPI } from "@dataxapi/sdk";
const dx = new DataXAPI(); // reads DATAXAPI_API_KEY
const result = await dx.wechat_mp.articles.metrics({ url: "https://mp.weixin.qq.com/s?__biz=MjM5MjAxNDM4MA==&mid=2667038683&idx=1&sn=0422127e651acd7f6cf6ef7e1cff04bc" });
console.log(result.data.item);dataxapi call wechat_mp.articles.metrics 'url=https://mp.weixin.qq.com/s?__biz=MjM5MjAxNDM4MA==&mid=2667038683&idx=1&sn=0422127e651acd7f6cf6ef7e1cff04bc'{
"code": "ok",
"request_id": "789c698d-e1c1-4558-9aa5-408482ee5894",
"data": {
"item": {
"id": "2622051355_1",
"metrics": {
"likes": 2218,
"comments": 6,
"shares": 8970,
"favorites": 97,
"views": 100001
},
"approximate": [
{ "field": "metrics.views", "kind": "lower_bound" }
]
}
},
"warnings": [],
"meta": {
"capability": "wechat_mp.articles.metrics",
"result_status": "complete",
"fetched_at": "2026-10-12T19:03:51.000Z",
"cached": false,
"replayed": false,
"unavailable": {
"url": "capability",
"type": "capability",
"title": "capability",
"text": "capability",
"lang": "capability",
"published_at": "capability",
"author": "capability",
"metrics.reposts": "platform",
"images": "capability",
"hashtags": "capability",
"mentions": "capability",
"is_pinned": "capability",
"post_id": "platform",
"parent_id": "platform",
"root_id": "platform"
},
"billing": {
"amount": "0.02",
"currency": "USD",
"balance_after": "9.98"
}
}
}From a response recorded 2026-10-12 19:03 UTC. Names, text and IDs are examples, and so are the links: none is the recorded one (the page shows no one's personal data); the figures are as recorded. Long lists are cut. The request ID, cursor and balance are made up.
WeChat Official Account article stats · $0.0200 / a call · Parameters, fields and errors on the endpoint's page →
What the example costs
one page of the account's articles, then the stats of each of those 10 articles
Prices are the prices in force when this page was built. A failed call, and an object that does not exist, cost nothing.
In your AI (MCP)
Connect DataXAPI to your AI client once. Then say what you want; the agent finds these endpoints, checks the price and calls them on your balance.
{
"capability": "wechat_mp.accounts.articles.list",
"id": "gh_13c97ab93ce8",
"idempotency_key": "<a new UUID>"
}Sign in to copy the setup prompt with your keyAbout the MCP server →
Good to know
- The stats take only the long link, with
__biz,mid,idxandsnin it. The links in the article list are of that kind; a short/s/link is not taken here. - Above 100,000 reads WeChat shows only “10万+”. The count then comes as 100001, and
approximatemarksmetrics.viewsas a lower bound. - The stats are counts and nothing else: title, time and author come from the article list or the article detail. Each call gives the counts at that moment; to follow an article over time, call again later.
- An empty page of the article list is charged; the stats charge nothing when they return no counts.