Get FBA Inventory
GET/api/products/:warehouseId/:productId/inventory-fba
Returns the Amazon FBA inventory listings for a product at a specific warehouse. Each row is an FBA-enabled product listing on the warehouse's sales channel, with its real-time FBA inventory snapshot (available, reserved, in transit, total, inbound) and Amazon condition (e.g. NewItem, UsedLikeNew). Rows are sorted by available quantity descending. Listings are scoped to the warehouse's marketplace (the warehouse country_code): a US FBA warehouse returns only US listings, never another marketplace's listing (e.g. a Canadian one), mirroring how Amazon MCF fulfils from the destination's marketplace.
Note: Amazon MCF only fulfills New-condition inventory — listings with a non-New condition cannot be fulfilled via createFulfillmentOrder even when available is greater than 0.
Authentication: Requires Bearer token. Rows come from two sources: (1) Amazon listings mapped to this product via product_listings, and (2) the FNSKU mapper — the seller SKU (MSKU) behind each SELLABLE FNSKU mapped to this product in the warehouse marketplace, with its FBA report stock. Source 2 lets a product whose marketplace listing is mapped to a different SKU.io product (a per-market "-CA-O" shadow listing) still surface its shippable seller SKU, so Amazon MCF submission resolves correctly. Mirrors ResolveFbaSellerSku.
products:readGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.