亚马逊-店铺上传
亚马逊 SP-API 通用文件上传。用于为 A+ Content、Messaging 等业务创建 upload destination,计算 contentMD5,并将图片或附件上传到返回的预签名地址。用户提到亚马逊文件上传、A+ 图片上传、Messaging 附件、createUploadDestinationForResource、upload destination、contentMD5、预签名上传、Uploads API、SP-API 上传文件时触发。即使未明确说“Uploads API”,只要其他亚马逊 SP-API 操作需要先获得可引用的上传资源地址,也应触发此技能;Feed 文档上传使用 linkfox-amazon-store-feeds 的专用流程。 Skill: 亚马逊-店铺上传 Owner: linkfox-ai Summary: 亚马逊 SP-API 通用文件上传。用于为 A+ Content、Messaging 等业务创建 upload destination,计算 contentMD5,并将图片或附件上传到返回的预签名地址。用户提到亚马逊文件上传、A+ 图片上传、Messaging 附件、createUploadDestinationForResource、upload destination、contentMD5、预签名上传、Uploads API、SP-API 上传文件时触发。即使未明确说“Uploads API”,只要其他亚马逊 SP-API 操作需要先获得可引用的上传资源地址,也应触发此技能;Feed 文档上传使用 linkfox-amazon-store-feeds 的专用流程。 Tags: latest:1.0.8 Version history: v1
Rank
62
Safety
84
Downloads
1.5k
Updated
Oct 10, 2026
Version
1.0.8
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.5K downloads reported by the source. Last updated 10/10/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 10, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 10, 2026
- Adoption signal
- 1.5K downloadsadoption · observed Oct 10, 2026
- Latest release
- 1.0.8release · observed Sep 14, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s171g8b6m2khwdy9ye8bxj0wx183vd4z:linkfox-amazon-store-uploads- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-amazon-store-uploads/snapshot"
Documentation
CLAWHUB
82,584 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: linkfox-amazon-store-uploads
description: 亚马逊 SP-API 通用文件上传。用于为 A+ Content、Messaging 等业务创建 upload destination,计算 contentMD5,并将图片或附件上传到返回的预签名地址。用户提到亚马逊文件上传、A+ 图片上传、Messaging 附件、createUploadDestinationForResource、upload destination、contentMD5、预签名上传、Uploads API、SP-API 上传文件时触发。即使未明确说“Uploads API”,只要其他亚马逊 SP-API 操作需要先获得可引用的上传资源地址,也应触发此技能;Feed 文档上传使用 linkfox-amazon-store-feeds 的专用流程。
---
# Amazon 店铺 Uploads(文件上传)
本 skill 专用于 **向 Amazon 申请上传目的地并上传文件**,与 **`linkfox-amazon-store-auth`** 同系列:依赖 **`linkfox-amazon-store-auth`** 选店(`sellerId`+`region`);直接 **`POST /spApi/developerProxy`** 传入 `sellerId`+`region` 调用 **createUploadDestinationForResource**,最后用 **`upload_to_destination.py`** 对返回的 URL 执行 **PUT**(不经网关)。
> 这是 **Uploads API**,不是 Orders 订单接口。订单见 **`linkfox-amazon-store-orders`**;批量 Feed 文件见 **`linkfox-amazon-store-feeds`**。
## 调用方式
- **API 端点**:`POST /spApi/developerProxy`(不同操作通过请求体区分;完整参数/响应/错误码见 `references/api.md`)
- **Python 脚本**:`python scripts/<脚本名>.py '<JSON 参数>' [--inline]`(可用脚本见上文脚本一览)
- **成本约束**:本工具会消耗算力;失败/空结果不得自动换关键词、翻页或连续试探;需要继续检索时先向用户说明会产生额外消耗。
**输出策略(脚本默认行为)**:
- **始终**将完整响应写入 `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/linkfox-amazon-store-uploads-<timestamp>.json`(`<cwd>` 为脚本执行时的工作目录,在 Claude Code 里即当前项目目录;`<session>` 取自环境变量 `SESSION_ID`,按用户任务自动聚合;**禁止写入 /tmp**,当前目录不可写则报错)
- 响应体 ≤ 8 KB:落盘后把完整 JSON 打印到 stdout
- 响应体 > 8 KB:落盘后 stdout 只输出摘要(顶层字段、常见计数如 `total`/`costToken`、最大列表字段的长度 + 前 3 条样本)
- 加 `--inline` 强制全量打印到 stdout(同样落盘)
**读数据建议**:先看摘要判断是否足够;需要具体字段时优先用 `jq`或`ConvertFrom-Json` 从保存的 json 文件按需抽取,避免整份 JSON 进入上下文。
## 解决认证和算力问题
发生以下异常情况时,采用 references/onboarding.md 引导解决问题:
### 异常情况
- **未配置API Key**:环境变量未配置 `LINKFOX_AGENT_API_KEY`,也未配置 `LINKFOXAGENT_API_KEY`。
- **响应401或402状态码**
- **响应提示算力或余额不足**:消息含"算力余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值",或类似含义的内容。
## 官方参考
[createUploadDestinationForResource](https://developer-docs.amazon.com/sp-api/reference/createuploaddestinationforresource) · [Create an upload destination](https://developer-docs.amazon.com/sp-api/docs/create-an-upload-destination)
---
## Prerequisites
1. 依赖 **`linkfox-amazon-store-auth`**。
2. **`resource`** 须与下游 API 文档一致(例如 A+:`aplus/2020-11-01/contentDocuments`;Messaging 为对应 messages 资源路径)。
3. **`contentMD5`** 为待上传文件内容的 **Base64 MD5 摘要**;传 **`filePath`** / **`content`** 时脚本可自动计算。
---
## 工作流
```text
create_upload_destination_for_resource → uploadDestination { uploadDestinationId, url, headers }
upload_to_destination (PUT url + headers) → 在 A+/Messaging 等 API 中引用 uploadDestinationId
```
---
## Scripts
| 脚本 | 说明 |
|------|------|
| `create_upload_destination_for_resource.py` | POST `uploads/2020-11-01/uploadDestinations/{resource}` |
| `upload_to_destination.py` | PUT 到返回的 `url`(带 `headers`) |
| `_spapi_uploads_common.py` | 内部公共模块 |
---
## 示例
```bash
export LINKFOXAGENT_API_KEY="<your-key>"
# 1) 创建上传目的地(自动根据 filePath 计算 contentMD5)
python scripts/create_upload_destination_for_resource.py '{
"sellerId":"A1...",
"region":"N_meta.json
{
"ownerId": "kn7dmc1t4j28hem1twwyav85p182pb1j",
"slug": "linkfox-amazon-store-uploads",
"version": "1.0.8",
"publishedAt": 1789361958596
}references/api.md
# linkfox-amazon-store-uploads — API 参考
Uploads **v2020-11-01**,用于在调用 A+ Content、Messaging 等 API 之前**上传二进制文件**。
---
## 1. createUploadDestinationForResource
| 项 | 值 |
|----|-----|
| method | POST |
| path | `uploads/2020-11-01/uploadDestinations/{resource}` |
| 脚本 | `create_upload_destination_for_resource.py` |
`{resource}` 是 greedy path 参数。传入未编码的下游 API 资源路径,构造网关 `path` 时须保留其中的 `/`,不得将路径分隔符预编码为 `%2F`。例如:
- `aplus/2020-11-01/contentDocuments`
- Messaging:`messaging/v1/orders/{amazonOrderId}/messages/...`(以官方为准)
### Query(写入 `queryString`)
| 参数 | 必填 | 说明 |
|------|------|------|
| marketplaceIds | 是 | 单站点 ID(脚本用 `marketplaceId` 或 `marketplaceIds[0]`) |
| contentMD5 | 是 | 文件内容的 Base64 MD5;或由 `filePath`/`content` 自动计算 |
| contentType | 否 | 如 `image/jpeg` |
### 入参 JSON(脚本)
| 字段 | 必填 |
|------|------|
| sellerId, region | 是 |
| resource | 是 |
| marketplaceId | 是 |
| contentMD5 或 filePath/content/contentBase64 | 是(二选一组合) |
| contentType | 建议 |
### 响应解析
字段 **`uploadDestination`**,通常含:
- `uploadDestinationId` — 后续业务 API 引用
- `url` — PUT 上传地址
- `headers` — 上传时必须附带的 HTTP 头
---
## 2. 上传文件(非 SP-API 代理)
| 脚本 | `upload_to_destination.py` |
|------|---------------------------|
| method | PUT |
| URL | `uploadDestination.url` |
| headers | `uploadDestination.headers` 全文带上 |
| 字段 | 必填 |
|------|------|
| uploadUrl 或 uploadDestination | 是 |
| headers(若未包在 uploadDestination 内) | 是 |
| filePath / content / contentBase64 | 是 |
**注意**:PUT 使用的字节须与申请 `contentMD5` 时一致。
---
## 3. contentMD5 计算
与 Amazon 要求一致:对文件字节做 MD5,再 **Base64** 编码摘要:
```python
base64.b64encode(hashlib.md5(data).digest()).decode("ascii")
```
---
## 4. 常见 resource 示例
| 场景 | resource 示例 |
|------|----------------|
| A+ 内容文档 | `aplus/2020-11-01/contentDocuments` |
| Messaging 附件 | 见 [Messaging API](https://developer-docs.amazon.com/sp-api/docs/messaging-api-v1-reference) 各 message 操作的 resource 说明 |
---
## 5. 错误与白名单
- **403**:Uploads 或下游角色未授权。
- **1005**:网关需放行 `uploads/2020-11-01/`。
- **429**:默认约 0.1 req/s(以官方为准)。
---
## 6. Feedback
`skillName`: **`linkfox-amazon-store-uploads`**references/onboarding.md
# 解决认证和算力问题
调用本 skill 时若网关返回 **auth** 或 **billing** 错误,走本 skill 自带的 `scripts/onboarding.py` 完成引导。
**auth 场景**:`errcode=401` 或消息含 `authorized error`/`鉴权失败`/`未授权`/`unauthorized`;或 `LINKFOX_AGENT_API_KEY` 与 `LINKFOXAGENT_API_KEY` 均为空。
1. 若已配置 key → 先让用户重启会话(最常见误判),仍失败让用户重新取 key 或换手机号重注册
2. 未配置 → 询问:自助去 https://agent.linkfox.com/ 取 key,或提供手机号让脚本注册
3. 手机号路径:
- `python scripts/onboarding.py send-code <phone>` → 展示 JSON 里的 phone/agreements
- 收到验证码后:`python scripts/onboarding.py login <phone> <code>`
- 拿到 `api_key` 后把下面三平台配置转发给用户,提示重启会话生效:
- Windows PowerShell(永久):`setx LINKFOX_AGENT_API_KEY "<key>"`
- macOS zsh:`echo 'export LINKFOX_AGENT_API_KEY="<key>"' >> ~/.zshrc && source ~/.zshrc`
- Linux bash:`echo 'export LINKFOX_AGENT_API_KEY="<key>"' >> ~/.bashrc && source ~/.bashrc`
- 变量名 `LINKFOX_AGENT_API_KEY`(主推)或 `LINKFOXAGENT_API_KEY`(老规范)任一即可
**billing 场景**:`errcode=402` 或消息含 `算力/余额/quota/insufficient/充值/套餐到期`。
- `python scripts/onboarding.py list-plans` → 有 AskUserQuestion 就弹菜单,否则输出编号清单让用户选
- 校验 `plan_id` ∈ 清单、支付方式 ∈ 该套餐 `available_methods`(通常 `wechat/alipay`)
- `python scripts/onboarding.py order <plan_id> <method>` → 展示优先级 PNG > `pay_url` > `ascii_qr`(标注兜底)
- 已付款可选调 `python scripts/onboarding.py query <order_id>`,不主动轮询
排除 `errcode=403`(无权限,不归入这两类)。所有子命令输出 stdout JSON,`error` 字段已含阶段前缀,透传给用户即可。完整用法:`python scripts/onboarding.py --help`。skill-card.md
## Description: This third-party skill helps agents create Amazon SP-API upload destinations, compute contentMD5 values, and upload images or attachments to returned presigned URLs for A+ Content, Messaging, and related workflows. This skill is ready for commercial/non-commercial use. ## Publisher: [linkfox-ai](https://clawhub.ai/user/linkfox-ai) ### License/Terms of Use: MIT-0 ## Use Case: External developers and Amazon store operators use this skill to prepare upload resources for Amazon SP-API workflows, especially A+ Content and Messaging attachments. It can guide API-key setup, create upload destinations through LinkFox, compute file digests, upload local file content to returned URLs, and preserve JSON results for later inspection. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: The skill can read local files and upload their bytes to a returned upload URL. Mitigation: Confirm the selected file is intended for the Amazon workflow and verify that upload URLs come from Amazon or LinkFox before running upload commands. Risk: The skill uses LinkFox API credentials and may expose sensitive values through environment variables, logs, transcripts, or shell history. Mitigation: Run with trusted environment variables, avoid sharing command transcripts containing credentials, and rotate any API key that appears in logs or history. Risk: The onboarding flow can guide phone/SMS account setup and initiate payment-order flows. Mitigation: Use onboarding only for explicit authentication or billing recovery, and confirm account, plan, payment method, and order details before proceeding. Risk: The skill persists complete API responses locally, which may include operational or account-related data. Mitigation: Review saved JSON files before sharing them and remove session data that is no longer needed. ## Reference(s): - [ClawHub skill page](https://clawhub.ai/linkfox-ai/skills/linkfox-amazon-store-uploads) - [API reference](references/api.md) - [Onboarding reference](references/onboarding.md) - [Amazon createUploadDestinationForResource reference](https://developer-docs.amazon.com/sp-api/reference/createuploaddestinationforresource) - [Amazon Create an upload destination guide](https://developer-docs.amazon.com/sp-api/docs/create-an-upload-destination) - [Amazon Messaging API reference](https://developer-docs.amazon.com/sp-api/docs/messaging-api-v1-reference) ## Skill Output: **Output Type(s):** [JSON, Files, Shell commands, Configuration guidance, API calls] **Output Format:** [Markdown guidance with shell commands, JSON stdout, and persisted JSON response files] **Output Parameters:** [1D] **Other Properties Related to Output:** [Writes complete responses under a linkfox session data directory and may print summaries for larger responses.] ## Skill Version(s): 1.0.8 (source: server release evidence) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their envi
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/linkfox-ai/skills/linkfox-amazon-store-uploads",
"sourceUrl": "https://clawhub.ai/linkfox-ai/skills/linkfox-amazon-store-uploads",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T10:15:16.341Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-amazon-store-uploads/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-amazon-store-uploads/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-10T10:15:16.341Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.5K downloads",
"href": "https://clawhub.ai/linkfox-ai/linkfox-amazon-store-uploads",
"sourceUrl": "https://clawhub.ai/linkfox-ai/linkfox-amazon-store-uploads",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T10:15:16.341Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.0.8",
"href": "https://clawhub.ai/linkfox-ai/linkfox-amazon-store-uploads",
"sourceUrl": "https://clawhub.ai/linkfox-ai/linkfox-amazon-store-uploads",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-09-14T04:59:18.596Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-amazon-store-uploads/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-linkfox-ai-linkfox-amazon-store-uploads/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.0.8",
"description": "Update from 1.0.7 to 1.0.8",
"href": "https://clawhub.ai/linkfox-ai/linkfox-amazon-store-uploads",
"sourceUrl": "https://clawhub.ai/linkfox-ai/linkfox-amazon-store-uploads",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-09-14T04:59:18.596Z",
"isPublic": true
}
]
}Record generated Oct 10, 2026.
