How to revise multi-variation listings with self-hosted images
Find the answer to your question
Advanced Search
When passing in a picture URLs from your own server
(self-hosted) in Trading API’s Add / Revise / Relist calls, the item level
picture URL (Item.PictureDetails.PictureURL)
will be uploaded to eBay server.
For single SKU item (no variation), you may revise or relist item level URL with either self-hosted or EPS (eBay Picture Service) Hosted images.
For multi-variation listings with self-hosted images, although eBay uploads item level picture URL (Item.PictureDetails.PictureURL) into eBay server, the variation level picture URLs (Item.Variations.Pictures.VariationSpecificPictureSet.PictureURL) do not get uploaded to eBay server. This can get a bid tricky when it comes to making revise call. Consider the following scenarios:
Multi-variation listings originally listed with self-hosted images in both item and variation levels:
|
Scenario |
Code Snippet |
Revise Response |
|
Revise call with only EPS pictures that was originally used to create item at item level and no new EPS pictures |
<ReviseFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <Item> <ItemID>xxxxxxxxxxx</ItemID> <PictureDetails> <PictureURL>Use GetItem to get the item-level URL uploaded to EPS</PictureURL> </PictureDetails> </Item> </ReviseFixedPriceItemRequest> |
<Ack>Success</Ack> |
|
Revise call with additional new EPS pictures at item level and EPS pictures at variation level for all variations. |
<ReviseFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <Item> <ItemID>xxxxxxxxxxx</ItemID> <PictureDetails> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </PictureDetails> <Variations> <Pictures> <VariationSpecificName>Color</VariationSpecificName> <VariationSpecificPictureSet> <VariationSpecificValue>Pink</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> <VariationSpecificPictureSet> <VariationSpecificValue>Blue</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> <VariationSpecificPictureSet> <VariationSpecificValue>Black</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> <VariationSpecificPictureSet> <VariationSpecificValue>Yellow</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> </Pictures> </Variations> </Item> </ReviseFixedPriceItemRequest> |
This will revise the item to convert self-hosted pictures to EPS pictures at both item and variation level (i.e. GetItem response > Item.PictureDetails.Picture = EPS) **Note** If you have multiple item level images you may have to change the order of EPS images at item level if they are the same photos and in the same order as before. This is because our system need to recognize a change at the item level pictures to convert the images from self-hosted to EPS <Ack>Success</Ack> |
|
Revise call with additional new EPS pictures at item level but no new variation level pictures |
<ReviseFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <Item> <ItemID>xxxxxxxxxxx</ItemID> <PictureDetails> <PictureURL>Use another EPS URL other than what you get from item level URL of GetItem call for the original item</PictureURL> </PictureDetails> </Item> </ReviseFixedPriceItemRequest> |
<Ack>Failure</Ack> <Errors> <ShortMessage>A mixture of Self Hosted and EPS pictures are not allowed.</ShortMessage> <LongMessage>A mixture of Self Hosted and EPS pictures are not allowed.</LongMessage> <ErrorCode>20004</ErrorCode> <SeverityCode>Error</SeverityCode> <ErrorClassification>RequestError</ErrorClassification> </Errors> |
Multi-variation listings originally listed with item level images only, with no variation level images.
|
Scenario |
Code Snippet |
Revise Response |
|
Revise call with any EPS pictures at item level or variation level |
<ReviseFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <Item> <ItemID>xxxxxxxxxxx</ItemID> <PictureDetails> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </PictureDetails> </Item> </ReviseFixedPriceItemRequest> Or <ReviseFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <Item> <ItemID>xxxxxxxxxxx</ItemID> <Variations> <Pictures> <VariationSpecificName>Color</VariationSpecificName> <VariationSpecificPictureSet> <VariationSpecificValue>Pink</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> <VariationSpecificPictureSet> <VariationSpecificValue>Blue</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> <VariationSpecificPictureSet> <VariationSpecificValue>Black</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> <VariationSpecificPictureSet> <VariationSpecificValue>Yellow</VariationSpecificValue> <PictureURL>Use a EPS URL from UploadSiteHostedPicture</PictureURL> </VariationSpecificPictureSet> </Pictures> </Variations> </Item> </ReviseFixedPriceItemRequest> |
<Ack>Success</Ack> |
Revise call works similar to single SKU listings.
**EPS image = new EPS image that are not already uploaded to this listing (call GetItem)