> ## Documentation Index
> Fetch the complete documentation index at: https://docs.socq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# X 用户帖子

> 从 X 个人资料中采集最近的公开帖子。

# X 用户帖子

采集一个或多个用户名的最近公开帖子。回复被排除在外。

```json theme={"system"}
{
  "usernames": ["openai", "github"],
  "results_limit": 40
}
```

## 与 MCP 一起使用

| 接口          | 值                                            |
| ----------- | -------------------------------------------- |
| REST        | `POST /v1/x/user-posts`                      |
| Compact MCP | `socq_execute` 与 `endpoint: "x/user-posts"`  |
| Typed MCP   | `socq_x_user_posts`                          |
| 精确工具 URL    | `https://api.socq.ai/mcp?tools=x_user_posts` |
| CLI         | `socq x user-posts`                          |

使用上面的 JSON 请求正文作为 `socq_execute` 的嵌套 `input` 对象，或将相同的字段直接传递给Typed 工具。Typed 工具还接受 `_wait_seconds`、`_result_limit` 和 `_idempotency_key`。

<Info>
  成功的采集将返回 `task_id`。继续 `socq_get_task` 直到任务成功，然后从 `results.items` 读取规范化记录。
</Info>

有关完整的提交和轮询流程，请参阅[MCP 快速入门](/zh/integrations/mcp)。

`results_limit` 指定每个用户名返回的最大帖子数。结果总数最多可达用户名数量乘以 `results_limit`。根据返回结果的总数计费。

结果使用 [X 帖子](/zh/api-manual/x/posts) 中记录的归一化结构，其中 `resource` 设置为 `user-posts`。提交的用户名返回到 `extra.input_username` 下。


## OpenAPI

````yaml api-manual/agent-api/agent-api.json POST /v1/x/user-posts
openapi: 3.1.0
info:
  title: SocQ Agent API
  version: v1-57489840196e
  description: Asynchronous social data API generated from the SocQ Capability Registry.
servers:
  - url: https://api.socq.ai
security: []
paths:
  /v1/x/user-posts:
    post:
      tags:
        - x
      summary: X User Posts API
      description: X User Posts API
      operationId: socq_x_user_posts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $schema: https://json-schema.org/draft/2020-12/schema
              type: object
              additionalProperties: false
              properties:
                results_limit:
                  type: integer
                  minimum: 1
                  maximum: 2000
                usernames:
                  type: array
                  items:
                    type: string
                    minLength: 1
                  minItems: 1
                  description: Public account usernames.
              required:
                - usernames
      responses:
        '200':
          description: Task accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentSubmitResponse'
      security:
        - bearerAuth: []
        - apiKeyAuth: []
components:
  schemas:
    AgentSubmitResponse:
      type: object
      properties:
        code:
          type: integer
          const: 200
        data:
          type: object
          properties:
            task_id:
              type: string
            status:
              type: string
            created_time:
              type:
                - string
                - 'null'
            idempotent_replay:
              type: boolean
          required:
            - task_id
            - status
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````