fbaInbound_get_labels
Download the box-label PDF of a confirmed shipment (v0 getLabels): the server fetches Amazon's downloadURL, cuts the pages to the label size and returns the PDF base64.
writeAmazon Seller (SP-API)sp.fulfillmentInboundV0
For per-unit FNSKU item labels use fbaInbound_createMarketplaceItemLabels. Amazon SP-API · getLabels · GET /fba/inbound/v0/shipments/{shipmentId}/labels Amazon SP-API · getShipment · GET /inbound/fba/2024-03-20/inboundPlans/{inboundPlanId}/shipments/{shipmentId}
Call it
In an AI client (MCP)
{
"name": "fbaInbound_get_labels",
"arguments": {
"store": "myStore-US",
"inbound_plan_id": "<inbound_plan_id>",
"shipment_id": "<shipment_id>"
}
}From code (Tool API)
curl -X POST https://api.sellersheetai.com/api/v1/tools/fbaInbound_get_labels \
-H "Authorization: Bearer $SELLERSHEET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"store":"myStore-US","inbound_plan_id":"<inbound_plan_id>","shipment_id":"<shipment_id>"}'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. |
inbound_plan_idrequired | string | the inboundPlanId (from fbaInbound_createInboundPlan or fbaInbound_listInboundPlans). |
shipment_idrequired | string | the shipmentId (from the placement option's shipmentIds in fbaInbound_listPlacementOptions, or fbaInbound_getInboundPlan once a placement is confirmed). An FBA confirmation id (FBA1234ABCD) also works — Amazon keys labels on it; the server resolves it (data.shipmentConfirmationId). |
page_type | string | the label sheet layout — not every layout suits every shipment (Gotchas). Default: PackageLabel_Letter_2. Allowed: PackageLabel_Letter_2 | PackageLabel_Letter_4 | PackageLabel_Letter_6 | PackageLabel_Letter_6_CarrierLeft | PackageLabel_A4_2 | PackageLabel_A4_4 | PackageLabel_Plain_Paper | PackageLabel_Plain_Paper_CarrierBottom | PackageLabel_Thermal | PackageLabel_Thermal_Unified | PackageLabel_Thermal_NonPCP | PackageLabel_Thermal_No_Carrier_Rotation.PackageLabel_Letter_2PackageLabel_Letter_4PackageLabel_Letter_6PackageLabel_Letter_6_CarrierLeftPackageLabel_A4_2PackageLabel_A4_4PackageLabel_Plain_PaperPackageLabel_Plain_Paper_CarrierBottomPackageLabel_ThermalPackageLabel_Thermal_UnifiedPackageLabel_Thermal_NonPCPPackageLabel_Thermal_No_Carrier_RotationDefault: "PackageLabel_Letter_2" |
label_type | string | the kind of label — BARCODE_2D box labels, UNIQUE for Transparency-enrolled items, PALLET for LTL/FTL (with number_of_pallets). Default: BARCODE_2D.BARCODE_2DUNIQUEPALLETDefault: "BARCODE_2D" |
number_of_packages | integer | package labels to print — pass it with page_size on a Non-Partnered or LTL shipment. |
package_labels_to_print | object[] | CartonIds, to reprint a subset. |
number_of_pallets | integer | pallet labels; with label_type PALLET only. |
page_size | integer | 1–1000; REQUIRED on Non-Partnered and LTL shipments (Amazon: "pageSize must be provided for Non-Partnered and LTL Shipments"). |
page_start_index | integer | REQUIRED with page_size on Non-Partnered LTL shipments. |
label_size | string | the plan workbook's "FBA Box Label Size" (row 9) — '100x150 mm', '100x100 mm' (bare WxH = mm; '4x6 in' works). Pages are CUT, never scaled: 100x150 keeps Amazon's page as is, 100x100 keeps the top square (where the label sits). Blank = Amazon's bytes untouched.Default: "" |
sta_spreadsheet_id | string | the plan workbook (mode A) — the server saves <FBA id>.pdf into the plan's Drive folder and turns three cells into links (STA-Options FBA ID, Manage Shipments fbaId and fbaLabel); you write nothing for them. Omit it in mode B and archive the PDF yourself (start_drive_upload) if the user wants it.Default: "" |
plan_folder_id | string | override the Drive folder (rare).Default: "" |
fba_spreadsheet_id | string | override the FBA spreadsheet for the Manage Shipments link (defaults to the workspace setting).Default: "" |
Result
Every tool answers {notification, data, human_action}; data carries:
data.labelData— the PDF, base64 — decode and print.data.labelSize / data.pageCount / data.pageType— what was applied.data.downloadURL— Amazon's presigned URL.data.driveUrl / data.driveFileId / data.fileName— the saved PDF — only with sta_spreadsheet_id or plan_folder_id.data.planFolderId / data.links / data.skipped— the folder, which cells became links ({staOptions, manageShipments}) and why a save was skipped.
Gotchas
- Not every page type works on every shipment — Amazon answers "Please check the parameter request or call GetValidPageTypesForShipment" when it disagrees (on a Non-Partnered shipment PackageLabel_Letter_2 is refused where PackageLabel_Plain_Paper succeeds): treat the enum as candidates and fall back to PackageLabel_Plain_Paper.