# 搜索作品

按查询词搜索快手公开作品。

ID: task:kuaishou_search_videos_v1 · Region: cn · Status: unknown

catalog_version: 5c920c774a55e44d7e8c709143b88a18b8b2afcef91a5d19a8c9ae5d565d9077
updated_at: 2026-10-21T12:06:16.523771+00:00

缓存资料；当前可用状态待核实。

按查询词搜索快手公开作品。

历史数据以数据集发布版本定义覆盖周期；实时读取反映请求时资料，不保证覆盖全部记录。

Docs: https://docs.asklear.cn/capabilities/task%3Akuaishou_search_videos_v1

## POST /v1/search

legacy · unknown · api_key, oauth

REST 需要客户 API Key；MCP 需要已开放的服务及现有授权；CLI 需要已发布且包含该命令的客户端。

续页：首次不传 `page_token`，之后把 `pagination.next_page_token` 原样传回。
`page_token` 是不透明串，不要自行构造或修改。

每个成功任务 17 Credits

请求声明 idempotency_key 时，同一次操作复用原键；元数据 GET 只读。

等待态响应提供结果/状态引用。先读取原结果；超时或结果不明时禁止自动重新提交付费执行。401/403/422 应先修正鉴权、权限或输入。

### Input schema / 输入契约

```json
{
  "$defs": {
    "Schema1": {
      "additionalProperties": false,
      "description": "Common filter names with source-specific values checked after parsing.\n\n``sort`` stays a bounded string here because ``SearchSourceDefinition``\nowns each provider's vocabulary.",
      "properties": {
        "sort": {
          "enum": [
            "latest",
            "popularity",
            "relevance"
          ]
        },
        "time_range": {
          "enum": [
            "day",
            "month",
            "week"
          ]
        }
      },
      "required": [],
      "type": "object"
    },
    "Schema2": {
      "additionalProperties": false,
      "description": "Exactly one public image reference accepted by the Search API.",
      "properties": {
        "asset_id": {
          "anyOf": [
            {
              "maxLength": 128,
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null
        },
        "base64": {
          "anyOf": [
            {
              "maxLength": 8388608,
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null
        },
        "url": {
          "anyOf": [
            {
              "maxLength": 2048,
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null
        }
      },
      "type": "object"
    }
  },
  "additionalProperties": false,
  "description": "Public request shape shared by text, image, and hybrid sources.",
  "properties": {
    "filters": {
      "$ref": "#/$defs/Schema1"
    },
    "image": {
      "anyOf": [
        {
          "$ref": "#/$defs/Schema2"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "max_credits": {
      "anyOf": [
        {
          "exclusiveMinimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "page": {
      "const": 1
    },
    "page_token": {
      "default": "",
      "maxLength": 8192,
      "type": "string"
    },
    "query": {
      "anyOf": [
        {
          "maxLength": 200,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "maxLength": 100
    },
    "search_mode": {
      "enum": [
        "text"
      ]
    },
    "source": {
      "const": "kuaishou"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "source",
    "query"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "filters": {},
  "page": 1,
  "query": "示例关键词",
  "search_mode": "text",
  "source": "kuaishou"
}
```

### Synthetic response / 合成响应

```json
{
  "data": {
    "items": [],
    "pagination": {
      "has_more": false
    }
  }
}
```

- data.items (array<object>): 本页返回的公开 Search 结果。
- data.items[].entity_id (string): 结果的稳定公开标识。
- data.items[].title (string|null): 如有则返回公开标题。
- data.items[].url (string|null): 如有则返回公开结果 URL。
- data.items[].snippet (string|null): 如有则返回来源无关的文本摘要。
- data.items[].video_id (string|null): 视频公开标识。
- data.items[].text (string|null): 如有则返回公开正文。
- data.items[].published_at (integer|null): 以 Unix 秒表示的发布时间。
- data.items[].duration_ms (integer|null): 以毫秒表示的时长。
- data.items[].like_count (integer|null): 点赞数。
- data.items[].view_count (integer|null): 浏览数。
- data.items[].comment_count (integer|null): 评论数。
- data.items[].share_count (integer|null): 分享数。
- data.items[].collected_count (integer|null): 收藏数。
- data.items[].author_id (string|null): 作者 ID。
- data.items[].author_name (string|null): 作者显示名称。
- data.pagination.has_more (boolean): 是否还有下一页公开 Search 结果。
- data.pagination.next_page_token (string|null): 传回 page_token 的不透明续页令牌；令牌以 asklear-search-cursor-v1. 开头。

Follow up: GET /v1/search/{job_id}
Read a pending search and its public results.

