productFees_getMyFeesEstimates
Amazon fee estimates for a batch of items in one request (Product Fees v0) — the batch form of productFees_getMyFeesEstimateForASIN and productFees_getMyFeesEstimateForSKU.
readAmazon Seller (SP-API)sp.productFeesV0
Amazon SP-API · getMyFeesEstimates · POST /products/fees/v0/feesEstimate
Call it
In an AI client (MCP)
{
"name": "productFees_getMyFeesEstimates",
"arguments": {
"store": "myStore-US",
"estimates": []
}
}From code (Tool API)
curl -X POST https://api.sellersheetai.com/api/v1/tools/productFees_getMyFeesEstimates \
-H "Authorization: Bearer $SELLERSHEET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"store":"myStore-US","estimates":[]}'Early access — the Tool API is open on request, contact us.
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. |
estimatesrequired | object[] | [{identifier (required: an ASIN or a SKU, auto-detected — an ASIN matches ^B[0-9A-Z]{9}$ — and echoed as FeesEstimateIdentifier), price (required listing price), currency (ISO 4217; defaults to the marketplace's), is_fba (true for FBA, false for MFN), shipping_price (MFN only), points (Japan only: {PointsNumber, PointsMonetaryValue: {Amount, CurrencyCode}}), marketplace_id (defaults to the store's), optional_fulfillment_program (FBA only; FBA_SNL is sunset)}], e.g. [{"identifier": "B0XXXXXXXX", "price": 29.99, "is_fba": true}]. The camelCase spellings (isFba, shippingPrice, marketplaceId, optionalFulfillmentProgram) work too; any other key is dropped. A 10-digit ISBN ASIN does not match the pattern and is sent as a SellerSKU — estimate it with productFees_getMyFeesEstimateForASIN. |
Result
Every tool answers {notification, data, human_action}; data carries:
data.ok— the identifiers Amazon estimated.data.failed— [{identifier, status, reason}] for every identifier without a usable estimate — Status not 'Success' (reason carries Amazon's Error.Code and Error.Message) or no result at all (status 'NoResponse'; an empty result list puts EVERY identifier here); notification.type is 'warning' whenever it is non-empty. Never read a missing fee as zero — a margin computed from a blank estimate is wrong.data.results— [{FeesEstimateIdentifier, FeesEstimateResult: {Status, FeesEstimate: {TotalFeesEstimate: {Amount, CurrencyCode}, FeeDetailList}}}] — write TotalFeesEstimate.Amount per identifier.
Body (Amazon schema): [FeesEstimateByIdRequest], each item
FeesEstimateRequest: {MarketplaceId*, IsAmazonFulfilled, PriceToEstimateFees*: {ListingPrice*, Shipping, Points}, Identifier*, OptionalFulfillmentProgram: FBA_CORE | FBA_SNL | FBA_EFN}
IdType*: ASIN | SellerSKU
IdValue*: string