listings_fetch_attributes_by_skus
Bulk fetch + flatten Amazon listings attributes for N OWNED SKUs in ONE call.
readAmazon Seller (SP-API)sp.listingsItems_2021-08-01
Amazon SP-API · getListingsItem · GET /listings/2021-08-01/items/{sellerId}/{sku} Amazon SP-API · getDefinitionsProductType · GET /definitions/2020-09-01/productTypes/{productType} Same shape as `listings_fetch_attributes_by_asins`, but reads your own submitted listing (listings_getListingsItem) instead of Amazon's merged catalog. productType comes from summaries[].productType.
Call it
In an AI client (MCP)
{
"name": "listings_fetch_attributes_by_skus",
"arguments": {
"store": "myStore-US",
"skus": []
}
}From code (Tool API)
curl -X POST https://api.sellersheetai.com/api/v1/tools/listings_fetch_attributes_by_skus \
-H "Authorization: Bearer $SELLERSHEET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"store":"myStore-US","skus":[]}'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. |
skusrequired | object[] | List of SKUs from the configured store. |
locale | string | schema locale for the labels; defaults to the marketplace's. Allowed: DEFAULT | ar | ar_AE | de | de_DE | en | en_AE | en_AU | en_CA | en_GB | en_IN | en_SG | en_US | es | es_ES | es_MX | es_US | fr | fr_CA | fr_FR | it | it_IT | ja | ja_JP | nl | nl_NL | pl | pl_PL | pt | pt_BR | pt_PT | sv | sv_SE | tr | tr_TR | zh | zh_CN | zh_TW.DEFAULTarar_AEdede_DEenen_AEen_AUen_CAen_GBen_INen_SGen_USeses_ESes_MXes_USfrfr_CAfr_FRitit_ITjaja_JPnlnl_NLplpl_PLptpt_BRpt_PTsvsv_SEtrtr_TRzhzh_CNzh_TW |
language_tag | string | which language's entries to keep; defaults to the marketplace's primary listing locale. |
Result
Every tool answers {notification, data, human_action}; data carries:
data.rows— [{sku, productType, attributes: {key: cell},data.rows.names— {key: display_name},data.rows.data.rows.names.dropped_entries— {attr: sentence}, note?} | {sku, error}] `note` is present when the row's product-type schema could not be served and the cells were typed from the JSON alone.
Params (Amazon schema; getListingsItem)
sellerId*: string
sku*: string
marketplaceIds*: [string]
issueLocale: string
includedData: summaries | attributes | issues | offers | fulfillmentAvailability | procurement | relationships | productTypes (list)Params (Amazon schema; getDefinitionsProductType)
productType*: string
sellerId: string
marketplaceIds*: [string]
productTypeVersion: string
requirements: LISTING | LISTING_PRODUCT_ONLY | LISTING_OFFER_ONLY
requirementsEnforced: ENFORCED | NOT_ENFORCED
locale: DEFAULT | ar | ar_AE | de | … | zh_TW (38 values)
parentageLevel: NONE | CHILD | PARENTWorkflow
- 1. Read column B (sku) for the selected rows. 2. Call this tool ONCE with all SKUs. 3. Place the returned keys by the template-is-truth recipe in `listings_fetch_attributes_by_asins` (steps 3–4): never rename a template column; a key outside the template's productType schema goes at the right end, named from `names`. 4. Write each row's flat attributes back + col D productType. 5. `product_site_launch_date` comes back with the rest. Nothing drops it for you: before you update this listing, remove the key or leave the fetched value — see listings_build_payload's note on it.