fbaInbound_createInboundPlan
Create an FBA inbound plan on Amazon (single-step).
writeAmazon Seller (SP-API)sp.fulfillmentInbound_2024-03-20
Amazon SP-API · createInboundPlan · POST /inbound/fba/2024-03-20/inboundPlans Gate: approve — interactive: show the change (Amazon's preview first where one exists), wait for an explicit approve; autopilot: only when the seller's own words asked for this change; otherwise ask. Use it to run the steps one by one — Split First, an India (IN) plan (fbaInbound_orchestrate_packing fails there because IN has no packing options), or a re-plan; for an ordinary Box First plan prefer fbaInbound_orchestrate_packing. Box First and Split First create the plan the same way; they differ only in the next call (Box First: fbaInbound_generatePackingOptions; Split First: fbaInbound_generatePlacementOptions). The store ref sets destinationMarketplaces.
Call it
In an AI client (MCP)
{
"name": "fbaInbound_createInboundPlan",
"arguments": {
"store": "myStore-US",
"plan_name": "<plan_name>",
"source_address": {},
"items": []
}
}From code (Tool API)
curl -X POST https://api.sellersheetai.com/api/v1/tools/fbaInbound_createInboundPlan \
-H "Authorization: Bearer $SELLERSHEET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"store":"myStore-US","plan_name":"<plan_name>","source_address":{},"items":[]}'Arguments
| Name | Type | Description |
|---|---|---|
storerequired | string | the store ref `<store>-<CC>` (name-country, e.g. 'myStore-US') — one of get_user_context's store_refs, verbatim. |
plan_namerequired | string | the plan's name, 1–40 characters. |
source_addressrequired | object | AddressInput. Required: name, addressLine1, city, countryCode (2-char ISO 3166-1 alpha-2), postalCode, phoneNumber. Optional: addressLine2, companyName, districtOrCounty, email, stateOrProvinceCode. |
itemsrequired | object[] | list of item dicts, 1-2000 items. Each: msku (required, maxLength 255), quantity (required, 1-500000), labelOwner (required), prepOwner (required). Optional per item: expiration (YYYY-MM-DD), manufacturingLotCode. labelOwner (who applies FNSKU labels). Allowed: AMAZON | SELLER | NONE. prepOwner (who performs unit prep). Allowed: AMAZON | SELLER | NONE. prepOwner is region- and SKU-dependent live: AMAZON is refused in MENA (FBA_INB_0237 "Amazon does not provide prep service in the current region" — use SELLER), and a SKU that requires no prep refuses SELLER ("does not require prepOwner but SELLER was assigned" — use NONE). |
Result
Every tool answers {notification, data, human_action}; data carries:
data.inboundPlanId— write this to STA sheet immediately (38-char id).data.operationId— poll with fbaInbound_getInboundOperationStatus — creation is ASYNC (HTTP 202), so the plan is not usable until that operation reports SUCCESS.
Body (Amazon schema)
destinationMarketplaces*: [string] (exactly 1) (max 20 chars)
items*: [{expiration, labelOwner*: AMAZON | SELLER | NONE, manufacturingLotCode (max 256 chars), msku* (max 255 chars), prepOwner*: AMAZON | SELLER | NONE, quantity* (1–500000)}] (1–2000)
name: string (max 40 chars)
sourceAddress*: {addressLine1* (max 180 chars), addressLine2 (max 60 chars), city* (max 30 chars), companyName (max 50 chars), countryCode* (2–2 chars), districtOrCounty (max 50 chars), email (max 1024 chars), name* (max 50 chars), phoneNumber* (max 20 chars), postalCode* (max 32 chars), stateOrProvinceCode (max 64 chars)}