SocialToAIStart freeConsole
POST/v1/search"platform": "zhihu"

Zhihu Search API

Find answers by keyword.

Search Zhihu answers by keyword and get back text, author, likes, comment count and publish time, as JSON over HTTP or from your AI client over MCP. A call to the Zhihu Search API costs 2 credits ($0.004 to $0.0067 depending on the pack), failed calls are free, and the response has the same format as every other call. Last tested 2026-11-05.

100 credits on sign-up, no card needed
2 creditsper call, ≈ $0.004–$0.0067
Usually 18 itemsup to 20 per page, one page per call
2026-11-05last tested
1.1 KBsample response, 1 item

Last updated:

Need 100 items? Send limit: 100 and one call pages for you: at most 6 pages, 12 credits. It stops once it has them or the list ends; pages it does not use are not charged, and neither are pages that fail. Reading 1,000 items comes to about 112 credits, about $0.37.

Daily watch: tell your AI “watch this daily” and this call runs by itself every day, sending only what is new: at most 62 credits a month, about $0.21. How to set it up

What you get from the Zhihu Search API.
From a recorded answer.

A recorded call returned 17 items; here is the first, field by field. Names and text are removed from the sample; the numbers are as recorded.

Lighter for your AI: the same recorded data (17 items) is about 194,416 tokens as the platform's raw JSON and about 56,725 as this interface returns it, 70% fewer (measured 2026-11-06). How it was measured

FieldIn the recorded answer
urlremoved from the sample
formatarticle
titleremoved from the sample
textremoved from the sample
published_at2026-03-03T08:11:12.000Z
author.idremoved from the sample
author.usernameremoved from the sample
author.nameremoved from the sample
author.verifiednull: Zhihu cannot give it
author.followers10,699
metrics.likes224
metrics.comments3
metrics.sharesnull: Zhihu cannot give it
metrics.collects0
metrics.viewsnull: Zhihu cannot give it
metrics.repostsnull: Zhihu cannot give it
imagesnull: Zhihu cannot give it
hashtagsnull: Zhihu cannot give it
is_pinnednull: Zhihu cannot give it

2 credits a call (≈ $0.004–$0.0067): about 1,500 calls for $10.

Easier with a ready-made tool: Brand buzz. How people feel about it on each platform, what comes up most, and the posts behind it.

Zhihu Search API: request and response

curl https://api.socialtoai.com/v1/search \  -H "Authorization: Bearer $SOCIALTOAI_API_KEY" \  -H "Idempotency-Key: $(uuidgen)" \  -H "Content-Type: application/json" \  -d '{    "platform": "zhihu",    "query": "咖啡机推荐"  }'
import osimport uuidimport requestsresponse = requests.post(    "https://api.socialtoai.com/v1/search",    headers={        "Authorization": f"Bearer {os.environ['SOCIALTOAI_API_KEY']}",        # A new key for each request; the same one again retries it without paying twice.        "Idempotency-Key": str(uuid.uuid4()),    },    json={        "platform": "zhihu",        "query": "咖啡机推荐",    },)print(response.json())
# Connected over MCP? Ask in plain words.Search Zhihu for answers about "咖啡机推荐".# Your AI calls the search tool with:{  "platform": "zhihu",  "query": "咖啡机推荐"}
Change the requestThe code above follows.
value
type
sort
Sign in to run2 creditsOpens in the Playground with these parameters after you sign in. It never runs by itself.
200 OK1.1 KB2 credits
{  "platform": "zhihu",  "status": "ok",  "items": [    {      "platform": "zhihu",      "id": "…",      "ref": "…",      "approx": [],      "type": "content",      "url": "https://example.com/…",      "format": "article",      "title": "…",      "text": "…",      "published_at": "2026-03-03T08:11:12.000Z",      "author": {        "id": "…",        "username": "…",        "name": "…",        "verified": null,        "followers": 10699      },      "metrics": {        "likes": 224,        "comments": 3,        "shares": null,        "collects": 0,        "views": null,        "reposts": null      },      "images": null,      "hashtags": null,      "is_pinned": null    }  ],  "unavailable": ["author.verified", "metrics.shares", "metrics.views", "metrics.reposts", "images", "hashtags", "is_pinned"],  "page": {    "has_more": true,    "cursor": "cur_…",    "cursor_expires_at": "2026-10-12T19:48:45.000Z"  },  "cost_credits": 2}
@…·10,699 followers·
likes 224comments 3shares nullcollects 0views null

Names and text were removed from the sample; the numbers are as recorded.

Sample data1 of the 17 items recorded

Zhihu Search API parameters.
5 parameters, 2 required.

Send them as a JSON body with POST. Your key goes in the Authorization header, never in the URL.

NameTypeRequiredDefaultDescription
platformstringRequired—Always "zhihu" on this page.
querystringRequired—Search terms
typestringOptional—Answers only, or articles only; both when left out. "user": accounts instead of posts (2 credits).
"answer""article""user"
sortstringOptional"relevance"By relevance, newest first, or most upvoted first
"relevance""latest""popular"
cursorstringOptional—Pass page.cursor from the last response to get the next page.

Zhihu Search API response fields.
What Zhihu cannot give is marked.

FieldTypeMeaning
items[].urlstringA link that opens the item.
items[].formatstringvideo, image, text or article.
items[].titlestringThe title.
items[].textstringThe body text or caption.
items[].published_atstringWhen it was published, ISO 8601 in UTC.
items[].author.idstringThe author's account ID.
items[].author.usernamestringThe author's handle.
items[].author.namestringThe author's display name.
items[].author.verifiedbooleanalways nullWhether the author is verified.
items[].author.followersintegerThe author's follower count.
items[].metrics.likesintegerLikes.
items[].metrics.commentsintegerComments.
items[].metrics.sharesintegeralways nullShares.
items[].metrics.collectsintegerSaves.
items[].metrics.viewsintegeralways nullViews or plays.
items[].metrics.repostsintegeralways nullReposts.
items[].imagesstring[]always nullImage addresses.
items[].hashtagsstring[]always nullHashtags, without the #.
items[].is_pinnedbooleanalways nullWhether the author pinned it.
nullFields Zhihu cannot give

Read null as “Zhihu did not give this”, not as zero. These are always null on this call:

  • author.verifiedWhether the author is verified.
  • metrics.sharesShares.
  • metrics.viewsViews or plays.
  • metrics.repostsReposts.
  • imagesImage addresses.
  • hashtagsHashtags, without the #.
  • is_pinnedWhether the author pinned it.
Other values of this call

Send the parameter and the call returns something else:

type=useraccounts instead of posts2 credits

Compared with the WeChat Articles Search API, this call also gives author followers and comments.

Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. Response format

Zhihu Search API: paging and billing.

One call returns a page of usually 18 items, up to 20 items. When page.has_more is true, send page.cursor back as cursor for the next page; each page costs 2 credits and a cursor works for 30 minutes.
A call that runs and finds nothing is a successful call: status is "empty", items is empty, and it costs 2 credits.

5 calls per second per key, 20 after a purchase; going over is not charged. Rate limits

A failed call costs 0 credits and is never retried on its own. Error codes

“Last tested” above is the last day a real call of this interface succeeded. Each call reads from the platform, and fetched_at in the answer is when it was read. The same request sent again with the same key within 5 minutes is a replay (replayed: true): 0 credits, and the answer as first read.

Once connected over MCP, these questions use the Zhihu Search API.

  1. Search Zhihu for answers about "咖啡机推荐".
    search {"platform":"zhihu","query":"咖啡机推荐"}
    2 credits
  2. Find Zhihu accounts about "人民日报".
    search {"platform":"zhihu","query":"人民日报","type":"user"}
    2 credits

Give this to your AI.
Copy it into Claude or ChatGPT.

How to connect
Prompt
Use the SocialToAI MCP server (https://mcp.socialtoai.com/mcp) for this: Search Zhihu for answers about "咖啡机推荐".Call the search tool with {"platform":"zhihu","query":"咖啡机推荐"}. Needed: query; optional: type (answer, article), sort (relevance, latest, popular).For many items pass limit (limit=100 is at most 6 pages) and one call pages for you; each page costs 2 credits and unused pages are not charged.Before you start, work out how many credits it will take in all and ask me; call it only after I agree.If SocialToAI is not connected yet, tell me how to connect it; never ask me to paste a key into the chat.Answer with a link to every item you used, and tell me how many credits it cost.

Paste it into a chat once SocialToAI is connected over MCP. There is no key in it: Claude and ChatGPT sign in, other clients send a key in a header.

These ready-made tools call it when they run.

brand-buzz
Brand buzz

How people feel about it on each platform, what comes up most, and the posts behind it

Work scenarios that use it.

china-market-research
Chinese market research

Your AI reads what Chinese consumers post on Xiaohongshu, Douyin, Weibo and other Chinese platforms, and answers in your language, with the posts it read and their links.

The same call on other platforms.

All platforms and prices
POST/v1/search{ "platform": "zhihu", "query": "咖啡机推荐" }2 creditsper call
Change one word in the request: platform. The response keeps the same shape.

Read next.

Zhihu official API: access, prices and limits

What its own API allows, who can use it and what it costs, with sources.

Zhihu MCP server

Let your AI read Zhihu.

Zhihu Search API: questions.
Short answers.

All Zhihu data APIs
Do I need a Zhihu account or Zhihu's own API access?
No. You only need a SocialToAI key. The call returns content and account information publicly visible on Zhihu; you never sign in to Zhihu or apply for anything there.
Can I get accounts instead of posts?
Yes: send type=user in the request. That call costs 2 credits.
What does one call cost in dollars?
2 credits: $0.0067 at 300 credits per dollar (purchases from $10), $0.004 at 500 per dollar (from $200). Credits never expire and there is no subscription. 100 free credits on sign-up, no card.
Am I charged when a call fails or finds nothing?
A failed call costs 0 credits and is never retried on its own. A call that runs and finds nothing is a successful call: status is "empty" and it costs 2 credits.
How much does one call return?
One call returns a page of usually 18 items, up to 20 items. When page.has_more is true, send page.cursor back as cursor for the next page; each page costs 2 credits and a cursor works for 30 minutes.
Is there a rate limit?
5 calls a second per key, 20 a second after your first purchase. A request over the limit is told how long to wait and is not charged.
How do I use it from Claude, ChatGPT or Cursor?
Yes. In Claude or ChatGPT, add the MCP address https://mcp.socialtoai.com/mcp as a custom connector, sign in with the code we email you and press Allow; there is no key to paste. In Claude Code, run one command, type /mcp, pick socialtoai and sign in; Codex and Cursor sign in too, with their steps on the connect page. Then ask in plain words and your AI calls search for you.
Start free · 100 credits

Your AI is one URL away
from all of social media.

100 credits on sign-up, no card needed