m.nicolau
m.nicolau

Reputation: 65

Amazon Fulfillment Inbound API v2024-03-20 shipments

I am currently using Amazon Selling Partner Fulfillment Inbound API v0 to get shipments (GET https://sellingpartnerapi-eu.amazon.com/fba/inbound/v0/shipments). According to docs, v0 is deprecated and the switch to v2024-03-20 should be made. However, I can't seem to find an equivalent operation in v2024-03-20. I've tried listing inboundPlans, then getting the shipments for each inbound plan, but this results only in empty lists. Data should be returned, as using the API version v0, I still get shipments. What I tried in v2024-03-20 was:

GET https://sellingpartnerapi-eu.amazon.com/inbound/fba/2024-03-20/inboundPlans to get inbound plans

GET https://sellingpartnerapi-eu.amazon.com/inbound/fba/2024-03-20/inboundPlans/{inboundPlanId} to get shipments per inbound plan, but the shipments list is always empty:

{'createdAt': 'redacted', ..... , 'shipments': [], 'status': 'ACTIVE'}

Is getting shipments possible in v2024-03-20? I am also confused as this is in the docs: enter image description here

That sounds to me like getShipments isn't being deprecated ("All operations other than the following...", yet when accessing the getShipments section, it is marked as deprecated:

enter image description here

Any input would be appreciated, thanks!

Upvotes: 0

Views: 674

Answers (3)

develop2learn
develop2learn

Reputation: 1

I was able to get this working , add Amazon Warehousing and Distribution to your developer profile you should be able to get this working

Upvotes: -1

joel
joel

Reputation: 46

I personally go about it like this:

  1. inbound/fba/2024-03-20/inboundPlans for inboundPlanId
  2. inbound/fba/2024-03-20/inboundPlans/{inboundplan_id} for shipmentId
  3. inbound/fba/2024-03-20/inboundPlans/{inboundPlan_id}/shipments/{shipment_id} for Shipping info and FBA id (shipmentConfirmationId)
  4. inbound/fba/2024-03-20/inboundPlans/{inboundPlan_id}/shipments/{shipment_id}/boxes for info about how many boxes and their contents.

Honestly to me the new endpoint seems unnecessarily difficult. I don't see how the inbound plans make it better.

Upvotes: 1

Marconline
Marconline

Reputation: 1451

As per this announcement on the Amazon SP-API changelog, the getShipments isn't deprecated (yet). I think that the message on the v0 of the getShipments means that is going to be deprecated in future releases, but for sure not in this one.

By the way, it seems that the getInboundPlan call is returning just top level informations on a particular inbound plan. Here what is written on the doc page of that particular call:

Fetches the top level information about an inbound plan.

In order to get the shipments, you need to follow these steps:

  1. after you retrieved the shipping plan, call the listPlacementOptions. This will give you the placement options for that particular inbound plan. A placement option basically describes the destination fulfillment center and shipping options for each item in the shipping plan.
  2. in the response you will have, for each placement option, an array called shipmentIds.
  3. with these IDs you can call the getShipment API

Hope this helps.

Upvotes: 2

Related Questions