> ## 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.

# AI 搜索

> 在 Instagram、TikTok 或 YouTube 上，用自然语言描述查找创作者。

用自然语言描述而非种子账号来查找创作者。`platform` 与 `query` 为必填；另有 `limit`（1–100，默认 40）和与[相似创作者](/docs/zh/api-reference/waveinflu/post_waveinflu-similar)相同的可选 `filters`（地区、语言、粉丝数与播放量区间、性别、种族、创作者类型、露脸情况、工作区去重）。

用一句话描述你想要的创作者（例如 `"beauty creators in the US"`），响应返回的创作者结构与相似创作者一致：`id`、`username`、`fullName`、`biography`、`email`、`followerCount`、`averagePlayCount` / `medianPlayCount`、`averageEngagementRate` / `medianEngagementRate`、`region`、`language`，以及 AI 推断的 `gender`、`ageRange`、`ethnicity`、`faceVisibility`、`accountPositioning`、`aiDescription`、`profileUrl` 和相关度 `score`。结果按 `score` 降序排列。

已有具体种子账号而非文字描述？请用 [`post_waveinflu_similar_creators`](/docs/zh/api-reference/waveinflu/post_waveinflu-similar)。多数匹配已自带 `email`；对为 null 的结果请用 [`post_waveinflu_email_lookup`](/docs/zh/api-reference/waveinflu/post_waveinflu-email-lookup)。

按实际交付的达人数（`data.count`）计费。

## 示例

<CodeGroup>
  ```bash REST theme={null}
  curl -X POST "https://api.aisa.one/apis/v1/waveinflu/ai-search" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
          "platform": "instagram",
          "query": "beauty creators in the US",
          "limit": 10
        }'
  ```

  ```jsonc MCP theme={null}
  // 把整段复制给 Claude Code、Codex、Cursor 或任意 coding agent。
  // 连接、授权、跑通这个例子需要的东西都在里面 ——
  // 不用粘贴任何 key，浏览器里点一次 Allow 就好。
  {
    "operation_id": "post_waveinflu_ai_search",
    "arguments": {
      "platform": "instagram",
      "query": "beauty creators in the US",
      "limit": 10
    },
    "max_price_usd": 0.5
  }
  // ── for the agent ─────────────────────────────────────────────────────────
  // Register the AIsa MCP server, then call its `use` tool with the JSON above.
  //   name       aisa
  //   endpoint   https://mcp.aisa.one/mcp
  //   transport  streamable-http
  //   auth       OAuth. The server publishes RFC 9728 metadata, so open a
  //              browser and the user clicks Allow once — nothing to paste.
  //              If AISA_API_KEY is set, send it as a bearer header instead.
  // Use your own MCP mechanism, not a hand-edited config file:
  //   Codex        codex mcp add aisa --url https://mcp.aisa.one/mcp
  //   Claude Code  claude mcp add --transport http -s user aisa https://mcp.aisa.one/mcp
  //   Cursor / VS Code   a "url" entry for https://mcp.aisa.one/mcp in the MCP config
  // The server lists five tools over https://mcp.aisa.one/servers worth of APIs:
  // search, get_details, use, batch_use, list_categories. search and
  // get_details are free; use is billed per call and max_price_usd refuses
  // anything above the cap before spending. This operation's full contract —
  // every argument, the response shape, the price and the pitfalls — is at
  //   https://aisa.one/docs/zh/api-reference/waveinflu/post_waveinflu-ai-search.md
  // Then run the call and show me the result.
  ```
</CodeGroup>

<Note>
  **第一次用？** 把任意 MCP 客户端指向 `https://mcp.aisa.one/mcp` —— Claude Code、
  Codex、Cursor、VS Code 都可以。鉴权走 OAuth：客户端打开浏览器，你点一次
  Allow，不需要粘贴任何 key。各客户端的具体命令和每次调用的价格见
  [aisa.one/zh-cn/mcp](https://aisa.one/zh-cn/mcp#connect)。
</Note>

[在你的 agent 里把这个端点跑起来 →](https://aisa.one/mcp?from=/zh/api-reference/waveinflu/post_waveinflu-ai-search)


## OpenAPI

````yaml openapi/zh/waveinflu.json POST /waveinflu/ai-search
openapi: 3.0.0
info:
  title: WaveInflu API
  version: 2.0.0
  description: >-
    WaveInflu 创作者发现 API，覆盖 Instagram、TikTok 和 YouTube：相似创作者（按种子账号）、AI
    搜索（按自然语言描述）、邮箱查询（单个创作者的联系邮箱）。
servers:
  - url: https://api.aisa.one/apis/v1
security:
  - bearerAuth: []
paths:
  /waveinflu/ai-search:
    post:
      summary: AI 搜索
      description: >-
        用自然语言描述而非种子账号来查找创作者。`platform` 与 `query` 为必填；另有 `limit`（1–100，默认
        40）和与相似创作者相同的可选 `filters`。用一句话描述想要的创作者（例如“beauty creators in the
        US”），响应返回的创作者结构与相似创作者一致——完整画像指标，加上 AI 推断的
        `gender`、`ageRange`、`ethnicity`、`faceVisibility`、`accountPositioning`、`aiDescription`
        和相关度 `score`。按实际交付的达人数（`data.count`）计费。
      operationId: post_waveinflu_ai_search
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - platform
                - query
              properties:
                platform:
                  type: string
                  enum:
                    - instagram
                    - tiktok
                    - youtube
                  description: 目标平台。
                  example: instagram
                query:
                  type: string
                  description: 对想要查找的创作者的自然语言描述。
                  example: beauty creators in the US
                limit:
                  type: number
                  minimum: 1
                  maximum: 100
                  default: 40
                  description: 返回创作者的最大数量。默认 40，范围 1–100，同时限制计费条数。
                  example: 10
                filters:
                  $ref: '#/components/schemas/CreatorFilters'
      responses:
        '200':
          description: 已返回创作者
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    description: 用于支持与监控的请求 ID。
                    example: req-b6l
                  billingRequestId:
                    type: string
                    description: 本次调用的计费引用，关联你的用量记录。
                    example: 3f522b56-2bb4-426c-9b76-5c04c91a9cb3
                  data:
                    $ref: '#/components/schemas/CreatorSearchData'
components:
  schemas:
    CreatorFilters:
      type: object
      description: 匹配前应用的可选筛选项，全部选填。
      properties:
        regions:
          type: array
          items:
            type: string
          description: 创作者地区（ISO 国家码），如 ["US", "GB", "JP"]。
        languages:
          type: array
          items:
            type: string
          description: 创作者语言，如 ["en", "ja", "zh-cn"]。
        minFollowers:
          type: number
          description: 最小粉丝 / 订阅数。
        maxFollowers:
          type: number
          description: 最大粉丝 / 订阅数。
        minPlayCount:
          type: number
          description: 最小播放 / 观看量，按 `playCountMetric` 口径衡量。
        maxPlayCount:
          type: number
          description: 最大播放 / 观看量，按 `playCountMetric` 口径衡量。
        playCountMetric:
          type: string
          enum:
            - median
            - average
          description: '`minPlayCount` / `maxPlayCount` 是按中位数还是平均播放量比较。'
        genders:
          type: array
          items:
            type: string
          description: 推断的创作者性别，如 ["female", "male"]。
        ethnicities:
          type: array
          items:
            type: string
          description: 推断的创作者种族。
        creatorTypes:
          type: array
          items:
            type: string
          description: 创作者账号类型，如 ["individual", "brand"]。
        faceVisibilities:
          type: array
          items:
            type: string
          description: 露脸情况分类，如 ["clear_face", "mixed", "no_face"]。
        workspaceDeduplicationEnabled:
          type: boolean
          description: 为 true 时，结果会排除已保存在你工作区中的创作者。
    CreatorSearchData:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Creator'
          description: 匹配到的创作者，按 `score` 降序排列。
        count:
          type: number
          description: 实际交付的创作者数量。计费依据此交付数。
          example: 2
    Creator:
      type: object
      description: 一条匹配到的创作者。相似创作者与 AI 搜索返回的字段一致。
      properties:
        id:
          type: string
          description: 平台侧创作者 ID。
        username:
          type: string
          description: 创作者用户名（不含前导 @）。
        fullName:
          type: string
          description: 创作者显示名。
        biography:
          type: string
          description: 主页简介文本。
        email:
          type: string
          nullable: true
          description: 从主页提取的联系邮箱（若有）。
        followerCount:
          type: number
          description: 粉丝 / 订阅数。
        region:
          type: string
          description: 创作者地区（ISO 国家码）。
        language:
          type: string
          description: 主要内容语言。
        averagePlayCount:
          type: number
          description: 近期内容的平均播放 / 观看量。
        medianPlayCount:
          type: number
          description: 近期内容的中位播放 / 观看量。
        averageEngagementRate:
          type: number
          description: 平均互动率（0–1）。
        medianEngagementRate:
          type: number
          description: 中位互动率（0–1）。
        gender:
          type: string
          description: 推断的性别，或 `unknown`。
        ageRange:
          type: string
          description: 推断的年龄段（如 `25_34`），或 `unknown`。
        ethnicity:
          type: string
          description: 推断的种族，或 `unknown`。
        faceVisibility:
          type: string
          description: 露脸情况分类，如 `clear_face`、`mixed`、`no_face`。
        accountPositioning:
          type: array
          items:
            type: string
          description: AI 生成的创作者定位 / 领域标签。
        aiDescription:
          type: string
          description: AI 生成的创作者内容、风格与常见画面的概述。
        platform:
          type: string
          description: 该创作者所属平台：instagram、tiktok 或 youtube。
        profileUrl:
          type: string
          description: 创作者主页 URL。
        score:
          type: number
          description: 匹配相关度分（0–1），按降序排列。
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````