Amazon Marketplace Web Service (MWS) will no longer be available after March 31, 2024. All MWS developers must migrate to Selling Partner API (SP-API) to avoid service disruptions. Refer to the Migration Hub for more information.
Uploads a feed for processing by Amazon MWS.
The SubmitFeed operation uploads a file and any necessary metadata for processing. Note that you must calculate a Content-MD5 value for the submitted file. For more information about creating a Content-MD5 value, see Using the Content-MD5 hash with the SubmitFeed and GetFeedSubmissionResult operations.
Feed size must be below 2 GiB (231, or 2,147,483,648 bytes) per feed. If you have a large amount of data to submit, you should submit feeds smaller than the feed size limit by breaking up the data, or submit the feeds over a period of time. For optimal performance, a good practice is to submit feeds with a size limit of 30,000 records/items, or submit feeds over a period of time, such as every few hours.
This operation is available in all marketplaces.
Maximum request quota | Restore rate | Hourly request quota |
---|---|---|
15 requests | One request every two minutes | 30 requests per hour |
You can generally get the best overall feed processing performance by following these guidelines:
Your feeds must be in a valid encoding based on your marketplace and file type, and that encoding must be specified as an HTTP Content-Type header. The following table shows the HTTP Content-Type header you should use for flat files and XML files for each marketplace:
Marketplace | Flat File Content-Type | XML Content-Type |
---|---|---|
North America and Europe | text/tab-separated-values; charset=iso-8859-1 | text/xml |
Japan | text/tab-separated-values; charset=Shift_JIS | text/xml |
If an Amazon seller is registered in multiple marketplaces, then the seller has multiple marketplace IDs associated with their merchant/seller ID. For more information on submitting a feed using multiple marketplace IDs, see Using Multiple Marketplaces.
For more information about the request parameters that are required for all Amazon MWS operations, see Required request parameters in the Amazon MWS Developer Guide.
Name | Description | Required | Valid values |
---|---|---|---|
FeedContent | The actual content of the feed itself, in XML or flat file format. You must include the FeedContent in the body of the HTTP request. | Yes | Default: None Type: HTTP-BODY |
FeedType | A FeedType value indicating how the data should be processed. | Yes | Default: None Type: xs:string |
MarketplaceIdList | A list of one or more marketplace IDs (of marketplaces you
are registered to sell in) that you want the feed to be applied
to. The feed will be applied to all the marketplaces you
specify. For example: &MarketplaceIdList.Id.1=A13V1IB3VIYZZH &MarketplaceIdList.Id.2=A1PA6795UKMFR9 See Using multiple marketplaces for more information. |
No, except for Product Images Feeds.1 | Marketplace IDs for marketplaces where you are registered to sell. Default: When no marketplaces are specified in the feed request, the request returns all marketplaces where the feed request can be submitted. List of Type: xs:string |
PurgeAndReplace | A Boolean value that enables the purge and replace functionality. Set to true to purge and replace the existing data; otherwise false. This value only applies to product-related flat file feed types, which do not have a mechanism for specifying purge and replace in the feed body. Use this parameter only in exceptional cases. Usage is throttled to allow only one purge and replace within a 24-hour period. | No | Default: false Type: xs:boolean |
ContentMD5Value | An MD5 hash of the feed content. Amazon MWS uses this value to determine if the feed data has been corrupted or tampered with during transit. This replaces the Content-MD5 header. See Using the Content-MD5 hash with the SubmitFeed and GetFeedSubmissionResult operations. | No | Default: none Type: xs:string |
AmazonOrderId | An Amazon-defined order identifier. Used to identify an Amazon Easy Ship order that you want to get PDF documents for. This functionality is available only in the India marketplace. See How to get invoice, shipping label, and warranty documents. | No | Default: none Type: xs:string |
DocumentType | The type of PDF document that you want to get for the Amazon Easy Ship order identified with the AmazonOrderId parameter. This functionality is available only in the India marketplace. See How to get invoice, shipping label, and warranty documents. | No | Default: all Values: ShippingLabel, Invoice, Warranty Type: xs:string |
FeedOptions | Additional information to pass to the feed. | No | If a feed accepts FeedOptions, the
FeedOptions values are described in the
feed description in the FeedType enumeration
section. Type: xs:string |
Name | Description | Required | Valid values |
---|---|---|---|
FeedSubmissionInfo | Detailed information about a feed submission. | Yes | Type: FeedSubmissionInfo |
For more information about the request parameters that are required for all Amazon MWS operations, see Required request parameters in the Amazon MWS Developer Guide.
POST /Feeds/2009-01-01 HTTP/1.1 Content-Type: x-www-form-urlencoded Host: mws.amazonservices.com User-Agent: <Your User Agent Header> ?AWSAccessKeyId=0PB842ExampleN4ZTR2 &Action=SubmitFeed &FeedType=_POST_PRODUCT_DATA_ &MWSAuthToken=amzn.mws.4ea38b7b-f563-7709-4bae-87aeaEXAMPLE &MarketplaceIdList.Id.1=ATVExampleDER &SellerId=A1XExample5E6 &ContentMD5Value=ExampleMd5HashOfHttpBodyAsPerRfc2616Example &SignatureMethod=HmacSHA256 &SignatureVersion=2 &Timestamp=2009-01-26T23%3A51%3A31.315Z &Version=2009-01-01 &Signature=SvSExamplefZpSignaturex2cs%3D
For more information about the request parameters that are required for all Amazon MWS operations, see Required request parameters in the Amazon MWS Developer Guide.
The following is an example HTTP body for a SubmitFeed request for a health-related product. See the note above on FeedContent. The HTTP body in unencrypted form looks like the following:
<?xml version="1.0" encoding="iso-8859-1"?> <AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd"> <Header> <DocumentVersion>1.01</DocumentVersion> <MerchantIdentifier>M_EXAMPLE_123456</MerchantIdentifier> </Header> <MessageType>Product</MessageType> <PurgeAndReplace>false</PurgeAndReplace> <Message> <MessageID>1</MessageID> <OperationType>Update</OperationType> <Product> <SKU>56789</SKU> <StandardProductID> <Type>ASIN</Type> <Value>B0EXAMPLEG</Value> </StandardProductID> <ProductTaxCode>A_GEN_NOTAX</ProductTaxCode> <DescriptionData> <Title>Example Product Title</Title> <Brand>Example Product Brand</Brand> <Description>This is an example product description.</Description> <BulletPoint>Example Bullet Point 1</BulletPoint> <BulletPoint>Example Bullet Point 2</BulletPoint> <MSRP currency="USD">25.19</MSRP> <Manufacturer>Example Product Manufacturer</Manufacturer> <ItemType>example-item-type</ItemType> </DescriptionData> <ProductData> <Health> <ProductType> <HealthMisc> <Ingredients>Example Ingredients</Ingredients> <Directions>Example Directions</Directions> </HealthMisc> </ProductType> </Health> </ProductData> </Product> </Message> </AmazonEnvelope>
Amazon MWS returns an XML file that contains the response to a successful request or subscription. If the request is unsuccessful, the main response element is ErrorResponse. For more information, see Response format in the Amazon MWS Developer Guide.
Amazon MWS responds with the following header and body:
Header:
HTTP/1.1 200 OK Content-Type: text/xml
Body:
<?xml version="1.0"?> <SubmitFeedResponse xmlns="http://mws.amazonaws.com/doc/2009-01-01/"> <SubmitFeedResult> <FeedSubmissionInfo> <FeedSubmissionId>2291326430</FeedSubmissionId> <FeedType>_POST_PRODUCT_DATA_</FeedType> <SubmittedDate>2009-02-20T02:10:35+00:00</SubmittedDate> <FeedProcessingStatus>_SUBMITTED_</FeedProcessingStatus> </FeedSubmissionInfo> </SubmitFeedResult> <ResponseMetadata> <RequestId>75424a38-f333-4105-98f0-2aa9592d665c</RequestId> </ResponseMetadata> </SubmitFeedResponse>