Skip to main content
Published: March 17 2011, 4:36:00 PMUpdated: November 28 2020, 9:13:17 PM

The RelistFixedPriceItem call can be used to to relist fixed-price item that has ended. It is recommended to use this call instead of creating a new listing using the AddFixedPriceItem call to take advantage of the recent sales score associated with the listing.

Here is a Java RelistFixedPriceItem sample for re-listing a multi-variation item; a variation from the original listing is deleted and a new variation is added during the relist operation.

© 2011-2013 eBay Inc., All Rights Reserved
Licensed under CDDL 1.0 -

import com.ebay.sdk.*;
import com.ebay.soap.eBLBaseComponents.*;

* Sample code for using RelistFixedPriceItem to relist an item with variations
* The following steps need to be done to delete a field from an existing listing.
* 1. Create an ApiContext Object.
* 2. Set the auth token and target api url (Webservice endpoint).
* 3. Create a RelistFixedPriceItem object.
* 4. Create an item object and set the SKU for the item.
* 5. Create a VariationType for each variation that is to be listed.
* 6. Add item specifics for each variation.
* 7. Set all the variations to VariationsType object and set this to the item using ItemType#setVariations(VariationsType)
* 8. Set the item as the itemToBeRelisted in the RelistFixedPriceItemCall object.
* 9. Add any field that is to be deleted to the RelistFixedPriceItemCall#setDeletedField(String[]) array.
* 10. Invoke RelistFixedPriceItemCall#relistFixedPriceItem() to re-list the item(A new item ID will be generated).
public class RelistFPItemWithVariations {

    public static void relistFixedPriceItem() {
        ApiContext apiContext = new ApiContext();
        ApiLogging apiLogging = new ApiLogging();

        // set the server url and credentials for Sandbox
        ApiCredential cred = apiContext.getApiCredential();
        cred.seteBayToken("YOUR TOKEN");
        // Set site to US
       RelistFixedPriceItemCall relistCall = new RelistFixedPriceItemCall(apiContext);

        ItemType item = new ItemType();

        item.setTitle("**TEST ITEM-Relisting item with new title-DO NOT BID**");

        // Adding a new variation Blue - M
        VariationType variation1 = new VariationType();

        // Create variation specifics
        NameValueListType sizeVariation = new NameValueListType();
        sizeVariation.setValue(new String[]{"M"});

        NameValueListType colorVariation = new NameValueListType();
        colorVariation.setValue(new String[]{"Blue"});

        NameValueListArrayType nvListArray = new NameValueListArrayType();
        nvListArray.setNameValueList(new NameValueListType[]{sizeVariation, colorVariation});

        // add variation specifics to a variation object

        AmountType amt = new AmountType();


        // Adding a new variation Brown - L
        VariationType variation2 = new VariationType();

        // Create variation specifics
        NameValueListType sizeVariation2 = new NameValueListType();
        sizeVariation2.setValue(new String[]{"L"});

        NameValueListType colourVariation2 = new NameValueListType();
        colorVariation2.setValue(new String[]{"Brown"});

        NameValueListArrayType nvListArray2 = new NameValueListArrayType();
        nvListArray2.setNameValueList(new NameValueListType[]{sizeVariation2, colorVariation2});

        // add variation specifics to a variation object

        AmountType amt2 = new AmountType();


        // Delete an existing variation Brown - M
        VariationType variation3 = new VariationType();

        VariationsType variations = new VariationsType();
        // add individual variations to a variations object
        variations.setVariation(new VariationType[]{variation1, variation2, variation3});


        try {
            relistCall.setDeletedField(new String[]{"Item.SubTitle"});
            System.out.println("The sku : " + item.getSKU() + " is relisted with new ItemID : " + relistCall.getReturnedItemID());
        } catch (ApiException e) {
        } catch (SdkException e) {
        } catch (Exception e) {


    public static void main(String[] args) {

How well did this answer your question?
Answers others found helpful