Python MWS Inbound: Create Inbound Shipment

Back to Index

Creates an inbound shipment.

Documentation: http://docs.developer.amazonservices.com/en_US/fba_inbound/FBAInbound_CreateInboundShipment.html

CURL Command

curl -X POST https://mws.amazonaws.com/FulfillmentInboundShipment/2010-10-01 \
  -d "AWSAccessKeyId=AWS_ACCESS_KEY_ID" \
  -d "Action=CreateInboundShipment" \
  -d "SellerId=MWS_SELLER_ID" \
  -d "SignatureVersion=2" \
  -d "Timestamp=CURRENT_DATE_TIME" \
  -d "Version=2010-10-01" \
  -d "Signature=MWS_SIGNATURE" \
  -d "SignatureMethod=HmacSHA256" \
  -d "ShipmentId=FBA0000001" \
  -d "InboundShipmentHeader.ShipmentName=SHIPMENT_NAME" \
  -d "InboundShipmentHeader.ShipFromAddress.Name=NAME" \
  -d "InboundShipmentHeader.ShipFromAddress.AddressLine1=ADDR_LINE1" \
  -d "InboundShipmentHeader.ShipFromAddress.City=Seattle" \
  -d "InboundShipmentHeader.ShipFromAddress.StateOrProvinceCode=WA" \
  -d "InboundShipmentHeader.ShipFromAddress.PostalCode=98121" \
  -d "InboundShipmentHeader.ShipFromAddress.CountryCode=US" \
  -d "InboundShipmentHeader.DestinationFulfillmentCenterId=ABE2" \
  -d "InboundShipmentHeader.ShipmentStatus=WORKING" \
  -d "InboundShipmentHeader.LabelPrepPreference=SELLER_LABEL" \
  -d "InboundShipmentHeader.IntendedBoxContentsSource=FEED" \
  -d "InboundShipmentItems.member.1.QuantityShipped=1" \
  -d "InboundShipmentItems.member.1.SellerSKU=SKU00001" \
  -d "InboundShipmentItems.member.1.PrepDetailsList.member.1.PrepInstruction=Taping" \
  -d "InboundShipmentItems.member.1.PrepDetailsList.member.1.PrepOwner=AMAZON" \
  -d "InboundShipmentItems.member.2.QuantityShipped=2" \
  -d "InboundShipmentItems.member.2.SellerSKU=SKU00002" \
  -d "InboundShipmentItems.member.2.PrepDetailsList.member.1.PrepInstruction=Taping" \
  -d "InboundShipmentItems.member.2.PrepDetailsList.member.1.PrepOwner=SELLER"

Python Example

import sys
import chilkat

rest = chilkat.CkRest()

#  URL: https://mws.amazonaws.com/FulfillmentInboundShipment/2010-10-01
bTls = True
port = 443
bAutoReconnect = True
success = rest.Connect("mws.amazonaws.com",port,bTls,bAutoReconnect)
if (success != True):
    print("ConnectFailReason: " + str(rest.get_ConnectFailReason()))
    print(rest.lastErrorText())
    sys.exit()

rest.AddQueryParam("AWSAccessKeyId","AWS_ACCESS_KEY_ID")
rest.AddQueryParam("Action","CreateInboundShipment")
rest.AddQueryParam("SellerId","MWS_SELLER_ID")
rest.AddQueryParam("SignatureVersion","2")
rest.AddQueryParam("Version","2010-10-01")
rest.AddQueryParam("SignatureMethod","HmacSHA256")
rest.AddQueryParam("ShipmentId","FBA0000001")
rest.AddQueryParam("InboundShipmentHeader.ShipmentName","SHIPMENT_NAME")
rest.AddQueryParam("InboundShipmentHeader.ShipFromAddress.Name","NAME")
rest.AddQueryParam("InboundShipmentHeader.ShipFromAddress.AddressLine1","ADDR_LINE1")
rest.AddQueryParam("InboundShipmentHeader.ShipFromAddress.City","Seattle")
rest.AddQueryParam("InboundShipmentHeader.ShipFromAddress.StateOrProvinceCode","WA")
rest.AddQueryParam("InboundShipmentHeader.ShipFromAddress.PostalCode","98121")
rest.AddQueryParam("InboundShipmentHeader.ShipFromAddress.CountryCode","US")
rest.AddQueryParam("InboundShipmentHeader.DestinationFulfillmentCenterId","ABE2")
rest.AddQueryParam("InboundShipmentHeader.ShipmentStatus","WORKING")
rest.AddQueryParam("InboundShipmentHeader.LabelPrepPreference","SELLER_LABEL")
rest.AddQueryParam("InboundShipmentHeader.IntendedBoxContentsSource","FEED")
rest.AddQueryParam("InboundShipmentItems.member.1.QuantityShipped","1")
rest.AddQueryParam("InboundShipmentItems.member.1.SellerSKU","SKU00001")
rest.AddQueryParam("InboundShipmentItems.member.1.PrepDetailsList.member.1.PrepInstruction","Taping")
rest.AddQueryParam("InboundShipmentItems.member.1.PrepDetailsList.member.1.PrepOwner","AMAZON")
rest.AddQueryParam("InboundShipmentItems.member.2.QuantityShipped","2")
rest.AddQueryParam("InboundShipmentItems.member.2.SellerSKU","SKU00002")
rest.AddQueryParam("InboundShipmentItems.member.2.PrepDetailsList.member.1.PrepInstruction","Taping")
rest.AddQueryParam("InboundShipmentItems.member.2.PrepDetailsList.member.1.PrepOwner","SELLER")

rest.put_Host("mws.amazonaws.com")
#  The AddMwsSignature method adds the Timestamp and Signature query params.
rest.AddMwsSignature("POST","/FulfillmentInboundShipment/2010-10-01","mws.amazonaws.com","MWS_SECRET_KEY")

strResponseBody = rest.fullRequestFormUrlEncoded("POST","/FulfillmentInboundShipment/2010-10-01")
if (rest.get_LastMethodSuccess() != True):
    print(rest.lastErrorText())
    sys.exit()

xmlResponse = chilkat.CkXml()
xmlResponse.LoadXml(strResponseBody)

CreateInboundShipmentResponse_xmlns = xmlResponse.getAttrValue("xmlns")
ShipmentId = xmlResponse.getChildContent("CreateInboundShipmentResult|ShipmentId")
RequestId = xmlResponse.getChildContent("ResponseMetadata|RequestId")

Sample XML Response Body

<?xml version="1.0" encoding="UTF-8" ?>
<CreateInboundShipmentResponse xmlns="http://mws.amazonaws.com/FulfillmentInboundShipment/2010-10-01/">
    <CreateInboundShipmentResult>
        <ShipmentId>FBA2F50GYX</ShipmentId>
    </CreateInboundShipmentResult>
    <ResponseMetadata>
        <RequestId>2a1455aa-c5f9-4993-9b18-dc10407e09ba</RequestId>
    </ResponseMetadata>
</CreateInboundShipmentResponse>