亚马逊店铺授权与管理技能,提供完整授权流程、令牌刷新、已授权店铺查询及访问令牌获取。获取授权链接时必须提供店铺名 sellerName,用于区分已授权店铺。用户提到亚马逊店铺授权、绑定店铺、刷新令牌、查询令牌、管理授权店铺、Amazon seller authorization、bind A...
本 skill 负责 亚马逊卖家店铺的 OAuth 授权、已授权店铺列表、授权状态查询、令牌刷新与本地取消授权,是拉取报告、查询库存、同步订单等所有下游操作的前置依赖。下游业务经 developerProxy 传入 sellerId + region 即可, 无需 先取 raw token。
📌 Related skill:如果用户需要 拉取亚马逊店铺报告(库存 / 订单 / 销售 / 财务报告等),请切换到
linkfox-amazon-store-report。该 skill 依赖本 skill 提供的授权与令牌能力。
Selling Partner API 是亚马逊为卖家提供的官方接口。本 skill 负责 OAuth 2.0 授权流程与令牌生命周期管理:
授权流程:生成授权 URL → 用户在 Amazon 完成授权 → Amazon 回调并附带授权码 → 系统用授权码换取令牌 → 令牌安全保存。
店铺名( sellerName)必填:调用 /spApi/authorizeUrl 前 必须 向用户询问并获取一个清晰、非空的店铺名。它用来在"已授权店铺列表"中标记该账号;不要留空或使用空白字符串。
令牌生命周期: accessToken 通常 1 小时过期; refreshToken 用于在不重新授权的前提下续签新的 accessToken。
FieldTypeDescriptionauthorizeUrlstring让用户在浏览器打开的 Amazon 授权链接
FieldTypeDescriptionsellerIdstringAmazon Seller ID (Merchant ID)sellerNamestring店铺名(授权时必填)regionstring市场区域代码 NA / EU / FE
POST /spApi/storeTokens 返回 状态与元数据(具体字段以网关为准),供确认授权是否有效、何时过期。 不要 将响应当作下游 developerProxy 的 token 来源。
FieldTypeDescriptionstatusstring授权/令牌状态(如有效、过期、缺失)authRecordIdinteger授权记录 ID(如有)expiresIninteger距 accessToken 过期的秒数(如有)tokenExpiresAtstring绝对过期时间(如有)messagestring补充说明errcode / errmsginteger / string网关错误(失败时)
兼容说明:旧版网关可能仍返回
accessToken/refreshToken;Agent 不应 优先读取或传递给下游。下游应使用sellerId+region调developerProxy。
CodeNameMarketplacesNA北美美国、加拿大、墨西哥EU欧洲英国、德国、法国、意大利、西班牙、荷兰等FE远东日本、澳大利亚、新加坡、印度
默认区域为 NA;解绑时按 Scenario 5 明确目标区域。
POST /spApi/{authorizeUrl|storeTokens|authorizedStores|refreshToken|cancelAuthorization}(完整参数/响应/错误码见 references/api.md)python scripts/<脚本名>.py '<JSON 参数>' [--inline](可用脚本见上文)输出策略(脚本默认行为):
<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<skill-name>-<timestamp>.json( <cwd> 为脚本执行时的工作目录,在 Claude Code 里即当前项目目录; <session> 取自环境变量 SESSION_ID,按用户任务自动聚合; 禁止写入 /tmp,当前目录不可写则报错)--inline 强制全量打印到 stdout(同样落盘)读数据建议:先看摘要判断是否足够;需要具体字段时优先用 jq 或 ConvertFrom-Json 从保存的 json 文件按需抽取,避免整份 JSON 进入上下文。
发生以下异常情况时,采用 references/onboarding.md 引导解决问题:
LINKFOX_AGENT_API_KEY,也未配置 LINKFOXAGENT_API_KEY。User request:「我要授权我的亚马逊北美站点」
Steps:
sellerName(若用户未提供)。 /spApi/authorizeUrl 要求 sellerName 为非空字符串;向用户说明这只是在 LinkFox 里识别店铺的标签,建议与 Seller Central 后台名字保持一致。/spApi/authorizeUrl,传入 region 与 sellerNameauthorizeUrl 给用户,让其在浏览器中打开/spApi/authorizedStores 确认授权成功User request:「列一下我已授权的亚马逊店铺」
Steps:
/spApi/authorizedStoresUser request:「我店铺的令牌过期了,帮我刷新」
Steps:
/spApi/refreshToken,传入 sellerId(可选 region)status、 message、 expiresIn);服务端更新令牌developerProxy(传入相同 sellerId + region), 无需 读取 raw tokenUser request:「查一下北美站点 A123 店铺的授权/令牌状态」
Steps:
/spApi/storeTokens,传入 sellerId 与 regionstatus、 expiresIn、 tokenExpiresAt、 message 等)sellerId + regionUser request:「取消/解绑我的亚马逊店铺授权」
仅在用户要求时执行。当前用户按 API key 对应的成员身份识别;共用该身份的使用者会一起受影响。
Steps:
/spApi/authorizedStores 确定 sellerId + region;不使用默认区域,有歧义时让用户选择。/spApi/cancelAuthorization,传入选定的 sellerId 与 region。references/api.md 解释结果;后续重新查询店铺,不自动重新授权。当用户提出任何涉及卖家后台数据的请求(拉报告、查库存、看订单等), 本 skill 负责前置的「选店 → 确认授权」,具体业务由相应的下游 skill 接手。
Steps:
/spApi/authorizedStoressellerId 与 region/spApi/storeTokens 仅作状态确认(过期则先 refreshToken)sellerId + region 交给下游 skill(例如 linkfox-amazon-store-report),由下游直接调 developerProxyWhy this workflow is critical:
sellerId + region,跳过「选店」会导致歧义和错误sellerName, 必须先问,不允许带空值调用 /spApi/authorizeUrl。status / 过期时间等元数据。/spApi/authorizeUrl 必须传入非空 sellerName;脚本与 agent 在调用前务必校验。accessToken 1 小时过期,需及时刷新。Applicable — 授权与令牌管理场景:
User SaysScenario"授权我的亚马逊店铺" / "Authorize my Amazon store"新店铺授权"看看已授权的亚马逊店铺" / "Show my authorized stores"列出已授权店铺"令牌过期了" / "My token expired"刷新令牌"查 XXX 店铺授权状态" / "Check store token status"查询授权状态(storeTokens)"绑定我的亚马逊账号" / "Connect my Amazon seller account"新店铺授权"取消授权" / "解绑这个亚马逊店铺" / "Disconnect seller account"本地取消/解绑授权
Not applicable — 超出本 skill 的业务:
linkfox-amazon-store-reportBoundary judgment:
sellerId + region 选店信息」。developerProxy 调用 storeTokens 取 raw accessToken(除非兼容极旧客户端且用户明确要求)。developerProxy + sellerId + regionAPIPathPurposeAuth RequiredGet Authorization URL/spApi/authorizeUrl生成授权链接(需要 sellerName)✅ YesList Authorized Stores/spApi/authorizedStores查询用户的店铺列表✅ YesRefresh Token/spApi/refreshToken刷新访问令牌✅ YesQuery Store Token Status/spApi/storeTokens查询某店铺授权/令牌状态(非下游 token 来源)✅ YesCancel Authorization/spApi/cancelAuthorization本地取消/解绑当前用户的店铺授权✅ Yes
详细请求参数、响应结构、错误码,见 references/api.md。完整授权流程图,见 references/authorization-flow.md。快速上手示例,见 references/quick-start.md。
同一店铺连续收到 Amazon SP-API 的 400、403、404 或 429 时,网关会返回 450、453、454 或 459 并短暂冷却。这些自定义状态码不是 Amazon 原生状态,也不表示封号;目的是避免持续异常或高频调用扩大店铺风险。
状态与 message范围触发与冷却处理450: 400,请求异常,请优化您的参数店铺+接口60 秒内超过 3 次:5 分钟;10 分钟内超过 4 次:20 分钟停止原参数重试,检查必填字段、marketplace、ID、日期和请求体453: 403,店铺未授权,请先授权店铺全部接口60 秒内超过 2 次:5 分钟;10 分钟内超过 4 次:30 分钟停止该店铺调用,检查授权、权限、店铺归属和区域454: 404,资源不存在,请优化您的参数店铺+接口60 秒内超过 3 次:5 分钟;10 分钟内超过 4 次:30 分钟确认资源 ID、所属店铺/站点、资源状态和接口路径459: 429限流中,请降低频率店铺+接口首次:15 秒;2 分钟内超过 2 次:30 秒;3 分钟内超过 4 次:2 分钟降低并发、分页和轮询频率并逐级退避
retryAfter、 blockedUntil,没有时按表中时长说明。reportId、 feedId 等任务 ID;写操作结果不确定时先查询状态,不直接重放。不消耗算力。
Feedback:
当出现以下任一情况时,自动通过 Feedback API 上报反馈:
按 references/api.md 中的规范调用 Feedback API,不要打断用户的主流程。
For more high-quality, professional cross-border e-commerce skills, visit LinkFox Skills.