---
name: etsy-store-query
description: "按多维度筛选 Etsy 店铺（销量、收藏、评论、开店时间、国家、主营类目、Raving/星标等）。"
compatibility: Requires the oo CLI and OOMOL Marketplace access.
metadata:
  title: "Etsy店铺查询"
  icon: ':lucide:shopping-bag:'
  packageName: "@leina/etsy-store-query"
  version: "0.1.0"
---
# Etsy店铺查询

## 固定使用内置市场

所有业务动作明确使用 `--connection-name marketplace_oomol`，不能省略，也不能替换为用户自建 LinkFox 连接。首次在当前账户/团队执行时，读取 `oo connector apps linkfox --json`，确认 `connectionName=marketplace_oomol`、`authType=marketplace` 且状态可用；用户指定团队时，连接列表和业务命令使用同一个 `--team`。

未找到该市场连接或无权使用时，停止并报告内置市场不可用。不得改用户默认连接，不得退回无选择器命令、其它连接或直连来源接口。`oo file upload/download` 是文件中转命令，不属于 LinkFox 连接选择。

## 业务流程

把用户的关键词、国家、类目、销量/评论/收藏区间等条件写入对应字段，省略没有提出的条件；同一维度起点不得超过终点。日期与排序枚举按 calls.md。商品搜索的 sortDesc 是 1 降序/2 升序，店铺是 1 降序/0 升序，不能混用。

商品读取 `response.data.products` 与 productNum，店铺读取 `response.data.stores` 与 storeNum；total 是本页返回数量。保留累计与周新增维度，分开商品与店铺销量，不从销量快照推断未来表现。类目 ID 需要时由已完成的类目查询获得，不能凭类目名称猜 ID。

## 选择动作并执行

先读 [当前调用契约](references/calls.md)，选择能完成当前步骤的 action，确认必填值、枚举、分页和结果容器。单动作 skill 直接使用该动作；多动作 skill 按上述业务顺序选择必要分支，不默认把动作表全部跑一遍。

将用户的真实参数写入当前任务目录中的 payload.json。执行 calls.md 中所选动作的完整命令。CLI 返回 `response.data` 为业务结果，`response.meta.executionId` 为执行标识。保存响应和查询条件用于后续衔接，不把旧平台 errcode/渲染元数据当作新的 CLI 输出契约。

结果解释遵循 [业务规则](references/business.md)。公开 schema 中的开放记录字段未逐字段保证；本轮仅做静态核对，未真实试跑。缺失或 null 标注未提供，不补零、不猜 ID、URL、币种或单位。数值比较只在单位和时间窗一致时进行。

## 分页、文件与交付

有分页参数的动作保持筛选与排序不变，根据本动作返回的总数/hasNextPage（若有）和用户范围推进；空页、重复页或达到用户要求时停止。total 的含义按所选端点说明；本页计数不能当作全集计数。无分页动作不自行发明 page/cursor。

仅在图片 URL 输入而用户只有本地文件时，先执行 `oo file upload "本地文件路径" --json`，将实际返回的 downloadUrl 写入该图片字段。已有可访问 URL 直接复用。不要把本地路径当远程 URL，也不要要求用户配置来源平台密钥。

仅对动作明确返回的文件下载字段执行 `oo file download "返回的文件URL" "用户指定的输出目录"`；下载命令不带 --json。网页、播放页、详情页和元数据 URL 不是下载地址。保存后确认文件类型与实际路径并提供可点击链接；图片/视频在环境支持时预览。签名 URL 留在任务文件中，不在汇报里展开。

依据用户需求交付查询摘要、对比表或本地 Markdown/CSV/JSON 文件。说明数据来源、查询时间、覆盖范围及未返回项。长数据先摘要，保留完整响应供检查，不硬编码原平台输出目录。

## 失败处理

失败时报告实际错误，保留已成功数据。鉴权、权限、余额或不支持的输入阻塞时按 OOMOL 错误指引处理，不运行源平台充值、余额检查、反馈、直接 HTTP 兜底或隐藏接口。不能把空结果说成已证明不存在，也不连续换条件或重跑已完成请求来掩盖失败。

## 读取业务字段

解释结果和构造后续请求前，读取 [结果字段与业务衔接](references/result-fields.md)，按端点保留关键输出、嵌套指标和关联 ID。
