executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
linkfox-amazon-store-external-fulfillment亚马逊 External Fulfillment 外部履约管理。用于 Seller Flex、FBA Onsite、Easy Ship、Self Ship、MFN Self Delivery 等项目中的按 location 库存查询或更新、履约货件处理、包裹与状态更新、配送选项、面单、发票和退货查询。用户提到 External Fulfillment、SmartConnect、Seller Flex、FBA Onsite、Easy Ship、Self Ship、batchInventory、location 库存、外部履约 shipment、EF 面单、EF 发票或 EF 退货时触发。即使未明确说“External Fulfillment API”,只要需求围绕这些外部履约项目的库存、货件、包裹或退货,也应触…
Independent GitHub snapshot · Automated classification · Original documentation governs
本 skill 与 linkfox-amazon-store-auth 等同属 Amazon Store 系列:依赖 linkfox-amazon-store-auth 选店(sellerId+region);直接 POST /spApi/developerProxy 传入 sellerId+region,由服务端解析 token(勿传 amzAccessToken,除非兼容旧调用)。转发上游 GET / POST / PUT / PATCH。
适用渠道:Seller Flex / FBA Onsite、Multi Seller Flex、Easy Ship、Self Ship、MFN Self Delivery、Amazon Pharmacy 等(以商家 allowlist 与角色为准)。
POST /spApi/developerProxy(完整参数/响应见 references/api.md)python scripts/<脚本名>.py '<JSON 参数>' [--inline]输出策略(脚本默认行为):
<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/linkfox-amazon-store-external-fulfillment-<timestamp>.json--inline 强制全量打印(同样落盘)读数据建议:先看摘要;需要具体字段时用 jq / ConvertFrom-Json 从落盘文件抽取。
发生以下异常情况时,采用 references/onboarding.md 引导解决问题:
LINKFOX_AGENT_API_KEY,也未配置 LINKFOXAGENT_API_KEY。| 模块 | 能力 | 文档 |
|---|---|---|
| Inventory | batchInventory | batchInventory |
| Shipping | getShipments | getShipments |
| Shipping | getShipment | getShipment |
| Shipping | processShipment | processShipment |
| Shipping | createPackages | createPackages |
| Shipping | updatePackage | updatePackage |
| Shipping | updatePackageStatus | updatePackageStatus |
| Shipping | retrieveShippingOptions | retrieveShippingOptions |
| Shipping | generateInvoice | generateInvoice |
| Shipping | retrieveInvoice | retrieveInvoice |
| Shipping | generateShipLabels | generateShipLabels |
| Returns | listReturns | listReturns |
| Returns | getReturn | getReturn |
本 skill 依赖 linkfox-amazon-store-auth。
python scripts/check_auth_dependency.py;若 exit code 42 且 stderr 含 DEPENDENCY_MISSING:,请先安装 linkfox-amazon-store-auth。| 能力 | developerProxy path(要点) | 脚本 |
|---|---|---|
| batchInventory | externalFulfillment/inventory/2024-09-11/inventories,POST | post_batch_inventory.py |
| getShipments | externalFulfillment/2024-09-11/shipments + Query | get_shipments.py |
| getShipment | .../shipments/{shipmentId} | get_shipment.py |
| processShipment | .../shipments/{shipmentId}?operation=,POST | process_shipment.py |
| createPackages | .../shipments/{shipmentId}/packages,POST | create_packages.py |
| updatePackage | .../shipments/{shipmentId}/packages/{packageId},PUT | update_package.py |
| updatePackageStatus | 同上 path,PATCH | update_package_status.py |
| retrieveShippingOptions | .../shipments/{shipmentId}/shippingOptions + packageId | retrieve_shipping_options.py |
| generateInvoice | .../shipments/{shipmentId}/invoice,POST | generate_invoice.py |
| retrieveInvoice | 同上 path,GET | retrieve_invoice.py |
| generateShipLabels | .../shipments/{shipmentId}/shipLabels?operation=,PUT | generate_ship_labels.py |
| listReturns | externalFulfillment/2024-09-11/returns + Query | list_returns.py |
| getReturn | .../returns/{returnId} | get_return.py |
共享逻辑见 scripts/_spapi_ef_common.py(仅供同目录脚本 import)。
requests 1~10 条。简化项:action=fetch|update、locationId、skuId;update 必填 quantity。MFN 单仓常用 locationId=DEFAULT;Seller Flex 用 4 位仓码。高级:useAmazonRequestShape:true 直传官方 requests。status(如 ACCEPTED/CREATED);可选 locationId、marketplaceId、channelName、lastUpdatedAfter/Before、maxResults、paginationToken。operation=CONFIRM|REJECT;REJECT 时可传 referenceId/lineItems 或 requestBody。packageLineItems 按官方 schema 放在 packages 或 requestBody。status/subStatus/reason。operation=GENERATE|REGENERATE;可选 shippingOptionId、packageIds。status(新退货常用 CREATED)、returnLocationId、时间窗、nextToken。典型履约流程:getShipments → processShipment(CONFIRM) → createPackages → retrieveShippingOptions → generateInvoice → generateShipLabels →(Self Delivery)updatePackageStatus。
export LINKFOXAGENT_API_KEY="<your-key>"
python scripts/post_batch_inventory.py '{"sellerId":"A1...","region":"NA","requests":[{"action":"fetch","locationId":"DEFAULT","skuId":"SKU-1","marketplaceAttributes":{"marketplaceId":"ATVPDKIKX0DER","channelName":"MFN"}}]}'
python scripts/get_shipments.py '{"sellerId":"A1...","region":"NA","status":"ACCEPTED","locationId":"ABCD"}'
python scripts/process_shipment.py '{"sellerId":"A1...","region":"NA","shipmentId":"...","operation":"CONFIRM"}'
developerProxy.errcode / httpStatus,再解析脚本附加字段(如 batchInventory、shipments、invoice)。responses[].status。success: true。externalFulfillment/ 前缀。linkfox-amazon-store-orders(普通 Orders)、linkfox-amazon-store-feeds(Feed 改库存)、linkfox-amazon-store-report(库存报告)边界不同,勿混用。retrieveShippingOptions 常返回空;Easy Ship 全球多数站点可能不支持 generateInvoice(印度除外)。references/api.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: 见 references/api.md,skillName:linkfox-amazon-store-external-fulfillment。
更多跨境 skill:LinkFox Skills