X user_following API
一次 REST 调用获取 X user_following 数据——按 FetchPI 全平台共享的稳定 JSON 模式标准化输出。
- 1 个已发布端点
- GET /v1/x/users/{username}/following
契约摘要(英文): List following (capability x.user_following)
- 标准化响应实体
- x/user_following
- capability
- x.user_following
每个响应还携带新鲜度(cache / default / live)与计费元数据。
使用场景
- 分析 {{platform}} 账号的受众:以标准化、分页的 JSON 返回粉丝与关注列表。
- 找出账号之间的共同粉丝,绘制受众关系、识别互动群组。
- 在达成合作前评估受众质量与重合度,无需导出原始页面。
返回字段
x user_following response (normalized envelope)
Paginated accounts a user follows as normalized user entities (capability x.user_following). Page size follows the request's `limit` parameter (1..100, default 20). Envelope of GET /v1/x/users/{username}/following.
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| data | profile[] | 必填 | — |
| next_cursor | string | null | 必填 | Opaque pagination cursor; null when the list is exhausted. |
| meta.request_id | string | 必填 | — |
| meta.freshness.mode | cache | default | live | 必填 | — |
| meta.freshness.age_seconds | integer | null | 可选 | — |
| meta.freshness.source_layer | cache | db | upstream | 必填 | — |
| meta.freshness.stale | boolean | 可选 | — |
| meta.billing.cache_hit | boolean | 必填 | — |
| meta.billing.amount_credits | integer | 必填 | Credits actually charged for this request (the settlement unit; 1 credit = $0.0001, permanent). |
字段备注为契约英文原文。
响应元数据
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| mode | cache | default | live | 必填 | Effective mode after merging param > max_age > source policy (D-004). |
| age_seconds | integer | null | 可选 | Age of served data; null when unknown. |
| source_layer | cache | db | upstream | 必填 | Which layer served the response (PRD §10). |
| stale | boolean | 可选 | True when stale data was served under stale_if_error / SWR (D-004). |
| billing.amount_credits | integer | 必填 | Micro-USD (1e-6 USD) actually charged for this request. |
| billing.cache_hit | boolean | 必填 | — |
字段备注为契约英文原文。
请求与响应示例
GET
/v1/x/users/{username}/followingcurl -H "Authorization: Bearer $MESHDATA_API_KEY" \
"https://api.fetchpi.com/v1/x/users/newdev/following"{
"data": [
{
"id": "2244994945",
"platform": "x",
"type": "profile",
"username": "newdev",
"display_name": "New Dev",
"description": "Building data APIs.",
"url": "https://x.com/newdev",
"profile_image_url": "https://cdn.example.com/avatar/newdev.jpg",
"banner_image_url": null,
"location": "Berlin",
"verified": false,
"created_at": "2019-04-01T10:15:00Z",
"metrics": {
"followers": 1204,
"following": 312,
"posts": 870,
"likes": 15200
},
"fetched_at": "2026-09-18T09:00:00Z"
}
],
"next_cursor": null,
"meta": {
"request_id": "req_01HTXQ8Z9HTQ",
"freshness": {
"mode": "default",
"age_seconds": 0,
"source_layer": "upstream",
"stale": false
},
"billing": {
"amount_credits": 200,
"cache_hit": false
}
}
}免费试用
注册免费账号、获取 API Key,即可在浏览器版 Playground 中直接调用该端点。
在 Playground 中试用该端点的参数表、错误码与响应语义见 API 文档。
查看端点参考常见问题
超长的粉丝列表如何处理?
列表使用游标分页——带上返回的 cursor 请求下一页,直到取够为止。
可以免费试用该端点吗?
可以——注册账号、拿到 API Key 后,即可在控制台的 Playground 中调用该端点。
user_following 能力怎么计费?
Data API 按请求以积分计费,cache/live 新鲜度有不同倍率。当前各能力的价格以价格页为准。