Reputation: 3258
I'm testing a request to the LMS side of the eBay API by sending a AddFixedPriceItemRequest to BulkDataExchangeRequests via createUploadJob.
When I do this I get the error: "UUID is required" even though in the documentation that I can find it says UUID is optional. However, I am including a UUID in the body of the call.
For the life of me I can't find an example of what the entire API call should look like. Headers included.
I am coding this in Ruby using the gems HTTParty and Builder for the XML. My other calls are working fine and I verified this is the actual XML that is being sent.
Here is what my XML looks like with header info:
destination = 'https://webservices.sandbox.ebay.com/BulkDataExchangeService'
headers = {
"X-EBAY-API-COMPATIBILITY-LEVEL"=>"949",
"X-EBAY-API-DEV-NAME"=>"My dev name token",
"X-EBAY-API-APP-NAME"=>"App name token",
"X-EBAY-API-CERT-NAME"=>"Cert name token",
"X-EBAY-SOA-OPERATION-NAME"=>"createUploadJob",
"X-EBAY-SOA-SECURITY-TOKEN" => "My auth token",
"X-EBAY-API-SITEID"=>"0",
"Content-Type"=>"text/xml"}
<?xml version="1.0" encoding="utf-8"?>
<BulkDataExchangeRequests>
<Header>
<SiteId>0</SiteId>
<Version>739</Version>
</Header>
<AddFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents">
<RequesterCredentials>
<eBayAuthToken>My Auth token</eBayAuthToken>
</RequesterCredentials>
<ErrorLanguage>en_US</ErrorLanguage>
<WarningLevel>High</WarningLevel>
<Item>
<Title>Listing with a bunch of CSS but no JS</Title>
<Description>
<![CDATA[bunch of html]]>
</Description>
<PrimaryCategory>
<CategoryID>37565</CategoryID>
</PrimaryCategory>
<ConditionID>3000</ConditionID>
<CategoryMappingAllowed>true</CategoryMappingAllowed>
<Country>US</Country>
<Currency>USD</Currency>
<DispatchTimeMax>3</DispatchTimeMax>
<ListingDuration>Days_7</ListingDuration>
<ListingType>FixedPriceItem</ListingType>
<PaymentMethods>PayPal</PaymentMethods>
<PayPalEmailAddress>[email protected]</PayPalEmailAddress>
<PictureDetails>
<PictureURL>http://s18.postimg.org/ocjdgkfrt/4_pack.jpg</PictureURL>
</PictureDetails>
<PostalCode>28211</PostalCode>
<ItemSpecifics>
<NameValueList>
<Name>Brand</Name>
<Value>Nike</Value>
</NameValueList>
<NameValueList>
<Name>Model</Name>
<Value>Odyssey</Value>
</NameValueList>
</ItemSpecifics>
<Variations>
<VariationSpecificsSet>
<NameValueList>
<Name>Size</Name>
<Value>XS</Value>
<Value>Large</Value>
</NameValueList>
<NameValueList>
<Name>Color</Name>
<Value>Black</Value>
<Value>Pink</Value>
</NameValueList>
</VariationSpecificsSet>
<Variation>
<SKU>my_first_sku</SKU>
<StartPrice>35.99</StartPrice>
<Quantity>5</Quantity>
<VariationSpecifics>
<NameValueList>
<Name>Size</Name>
<Value>XS</Value>
</NameValueList>
<NameValueList>
<Name>Color</Name>
<Value>Black</Value>
</NameValueList>
</VariationSpecifics>
</Variation>
<Variation>
<SKU>my_second_sku</SKU>
<StartPrice>38.99</StartPrice>
<Quantity>6</Quantity>
<VariationSpecifics>
<NameValueList>
<Name>Size</Name>
<Value>Large</Value>
</NameValueList>
<NameValueList>
<Name>Color</Name>
<Value>Pink</Value>
</NameValueList>
</VariationSpecifics>
</Variation>
<Pictures>
<VariationSpecificName>Color</VariationSpecificName>
<VariationSpecificPictureSet>
<VariationSpecificValue>Black</VariationSpecificValue>
<PictureURL>http://thecodeplayer.com/uploads/s.jpg</PictureURL>
<PictureURL>http://thecodeplayer.com/uploads/1.jpg</PictureURL>
</VariationSpecificPictureSet>
<VariationSpecificPictureSet>
<VariationSpecificValue>Pink</VariationSpecificValue>
<PictureURL>http://thecodeplayer.com/uploads/mediaB.jpg</PictureURL>
<PictureURL>http://thecodeplayer.com/uploads/mediadx.jpg</PictureURL>
</VariationSpecificPictureSet>
</Pictures>
</Variations>
<ReturnPolicy>
<ReturnsAcceptedOption>ReturnsAccepted</ReturnsAcceptedOption>
<RefundOption>MoneyBack</RefundOption>
<ReturnsWithinOption>Days_30</ReturnsWithinOption>
<Description>This is just a description for the return
policy</Description>
<ShippingCostPaidByOption>Buyer</ShippingCostPaidByOption>
</ReturnPolicy>
<ShippingDetails>
<ShippingType>Flat</ShippingType>
<ShippingServiceOptions>
<ShippingServicePriority>1</ShippingServicePriority>
<ShippingService>USPSMedia</ShippingService>
<ShippingServiceCost>2.50</ShippingServiceCost>
</ShippingServiceOptions>
</ShippingDetails>
<Site>US</Site>
<UUID>8deb51e81bdc4b8eb136f92b746dd898</UUID>
</Item>
Upvotes: 1
Views: 397
Reputation: 1642
Based on your XML provided above; It seems that you are confusing the nature of LMS.
That means that you MUST NOT include the Item
Payload in the createUploadJob. (See Ebay Documentation).
In general, you MUST:
Followed By:
You should read the LMS guide. Starting with the section on workflow.
Upvotes: 3