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

> ## Agent Instructions
> - Base URLs: models `https://api.aisa.one/v1` (Gemini GenerateContent: `https://api.aisa.one/v1beta`); data APIs `https://api.aisa.one/apis/v1`. The `servers` of each operation in https://aisa.one/openapi.yaml is authoritative.
> - Auth: `Authorization: Bearer $AISA_API_KEY`. Never print, log, or commit the key.
> - MCP (preferred for agents): `https://mcp.aisa.one/mcp`, signed in with OAuth, so there is no key to paste.
> - Agent Skill: `npx skills add AIsa-team/agent-skills --skill aisa`. Fallback with the AIsa CLI: `aisa skills install aisa`.
> - Spending: docs, https://aisa.one/models, https://aisa.one/api, `/v1/models`, and MCP `search`, `list_categories`, `get_details`, `batch_quote`, and the `account` operation are free. Quote the exact calls before running them (MCP `batch_quote`, CLI `aisa quote --json`). If the quote reports `auto_execute_eligible: true`, run it unless the user set a tighter limit or asked only for a quote. Otherwise, tell the user in one message the planned calls, the quoted price, and a total USD budget for the task, then wait for approval. Direct HTTP calls follow the stricter rule at https://aisa.one/docs/get-started/cli.md#direct-http-fallback. Do not make paid calls to test availability. Full rule: https://aisa.one/llms.txt

# 发布帖子

> 以已连接账号发布 LinkedIn 帖子。

以已连接账号发布帖子。写操作，结果在 LinkedIn 上公开可见，请视为不可撤销。请求必须是 `multipart/form-data`：上游解析附件时 JSON body 会被拒。加图用 `-F "attachments=@image.jpg"`；提及某人时在正文写 `{{0}}` 并传 `mentions[0][profile_id]` 与 `mentions[0][name]`；代公司发文则传 `as_organization`（需是该主页管理员）。

参考价格：每次成功请求 \$0.02 USD。


## OpenAPI

````yaml openapi/zh/unipile.json POST /apis/v1/unipile/linkedin/posts
openapi: 3.1.0
info:
  title: Unipile LinkedIn API
  version: 1.0.0
  description: >-
    LinkedIn data and messaging through your connected accounts: profiles,
    companies, chats, posts, network, structured search, and Recruiter job-slot
    credits. Bring your own LinkedIn account (connect once through the hosted
    authorization link), then read and act through one AIsa credential.
servers:
  - url: https://api.aisa.one
security:
  - bearerAuth: []
tags:
  - name: Accounts
    description: Connected-account discovery and binding liveness.
  - name: Profiles
    description: Member and company profiles.
  - name: Messaging
    description: Conversations, messages, and attachments.
  - name: Posts
    description: Member posts and their comments.
  - name: Network
    description: Connections and invitations.
  - name: Search
    description: Structured LinkedIn search and its parameter helper.
  - name: Recruiter
    description: Recruiter contract quota endpoints.
paths:
  /apis/v1/unipile/linkedin/posts:
    post:
      tags:
        - Posts
      summary: Create Post
      description: >-
        Publishes a post as the connected account. Write action, and the result
        is publicly visible on LinkedIn, so treat it as irreversible. The
        request must be `multipart/form-data`: a JSON body is rejected while
        upstream parses attachments. Add an image with `-F
        "attachments=@image.jpg"`, mention someone by putting `{{0}}` in the
        text and passing `mentions[0][profile_id]` / `mentions[0][name]`, or
        post on behalf of a company you administer by passing `as_organization`
        with the company id. $0.02 per request.
      operationId: post_unipile_linkedin_create_post
      parameters: []
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
                - account_id
                - text
              properties:
                account_id:
                  type: string
                  description: Connected account id the post is published from.
                text:
                  type: string
                  description: >-
                    Post body. Use `{{0}}` placeholders to reference entries of
                    the `mentions` array.
                attachments:
                  type: array
                  description: >-
                    Files to attach, one `-F "attachments=@file"` per file.
                    Either several images or a single file of another type;
                    images are capped at 6012x6012 px.
                  items:
                    type: string
                    format: binary
                external_link:
                  type: string
                  description: >-
                    URL rendered as a preview card. Must also appear in `text`
                    or it is appended automatically.
                as_organization:
                  type: string
                  description: >-
                    Company id to publish on behalf of. Your account must
                    administer that company page.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  object:
                    type: string
                    enum:
                      - PostCreated
                  post_id:
                    type: string
                    description: Id of the published post.
        '401':
          description: Missing or invalid API key.
        '402':
          description: Insufficient balance.
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.