Overstock.com

XML Schema Documentation

Table of Contents

top

Overview

The objective of this document is to explain how a CMSP (Channel Management Service Provider) can communicate with the Overstock.com Shopping site's database to submit product to the Overstock.com Shopping site on behalf of partners.

XML (Extensible Markup Language) is a general-purpose markup language for creating special-purpose markup languages. API stands for application program interface. The Overstock.com Shopping API is a set of protocols for making XML calls to communicate with the Overstock.com Shopping site's database. All requests to the API are sent to a secure web server in an HTML POST command using a known XML format. The API always responds with a response.

In order to use this API, a CMSP must first obtain a Merchant ID from an Overstock.com representative. This ID must be sent with every API call. This a personal ID and every care should be made to protect it. CMSPs are advised to validate responses against the XSD, at the following URL: https://sapidev.overstock.com/docs/api.xsd.

The URL for developing and testing is:
https://sapidev.overstock.com/api

Here is an example for posting the XML, using the call "GetOverstockTime":

<?xml version="1.0" encoding="ISO-8859-1"?>

<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <GetOverstockTime />
</Request>
            

Another requirement of the API is that the method name being called be passed in the headers. The header name to use is SapiMethodName. The format, then, is "SapiMethodName: <MethodName>".

The remainder of this document will detail the XML calls that are included in the Overstock.com Shopping API, and give examples of how to use them.

top

Schema Document Properties

Target Namespace http://www.overstock.com/shoppingApi
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations belong to this schema's target namespace.
  • By default, local attribute declarations have no namespace.

Declared Namespaces

Prefix Namespace
Default namespace http://www.overstock.com/shoppingApi
xml http://www.w3.org/XML/1998/namespace
xs http://www.w3.org/2001/XMLSchema
html http://www.w3.org/1999/xhtml
Schema Component Representation
<xs:schema targetNamespace="http://www.overstock.com/shoppingApi" elementFormDefault="qualified">
...
</xs:schema>
top

Global Schema Components

Element: Request

Name Request
Type Locally-defined complex type
Nillable no
Abstract no
Documentation Requests are broken into two groups, authenticated calls and unauthenticated calls. Authenticated calls are calls that are made on behalf of an end-user. This user is specified by their AuthenticationKey, which must have previously been retrieved by a call to GetCredentials and activated by having the user login at the URL specified. The act of the user logging in authorizes you, the API client, to make calls on their behalf. Unauthenticated calls are calls that are not made on behalf of a user. The GetCategories call is an example of this. Below is a list of both calls requiring authentication and those that do not:

Authenticated Calls:
  • SubmitNewProduct
  • ResubmitProduct
  • GetProductStatus
  • GetProductStatus2
  • GetChangedProducts
  • GetSourceability
  • GetProduct
  • GetProduct2
  • AddOption
  • UpdateQuantity
  • UpdateProduct
  • GetReturns
  • GetOrders
  • GetOrders2
  • GetOrders3
  • ProcessingOrders
  • ProcessingReturns
  • SubmitReturnRma
  • SubmitReturnClosure
  • ConfirmShipment
  • ShortshipLine

Unauthenticated Calls:
  • GetCredentials
  • GetOverstockTime
  • GetCategories
  • GetBrands


Several of the authenticated requests in this application have dependancies. To illistrate the semi hierarchal structure please see the list provided below. Each request is listed beneath the request for which it depends.

* These requests are only valid in the test enviroment.
XML Instance Representation
<Request>
<MerchantKey> uuid </MerchantKey> [1]
Start Choice [1]
<AuthenticationKey> uuid </AuthenticationKey> [1]
Start Choice [1]
<SubmitNewProduct> submitNewProductRequest </SubmitNewProduct> [1]
<ResubmitProduct> resubmitProductRequest </ResubmitProduct> [1]
<GetProductStatus> getProductStatusRequest </GetProductStatus> [1]
<GetProductStatus2> getProductStatus2Request </GetProductStatus2> [1]
<GetChangedProducts> getChangedProductsRequest </GetChangedProducts> [1]
<GetSourceability> getSourceabilityRequest </GetSourceability> [1]
<GetProduct> getProductRequest </GetProduct> [1]
<GetProduct2> getProduct2Request </GetProduct2> [1]
<AddOption> addOptionRequest </AddOption> [1]
<UpdateQuantity> updateQuantityRequest </UpdateQuantity> [1]
<UpdateProduct> updateProductRequest </UpdateProduct> [1]
<GetReturns> getReturnsRequest </GetReturns> [1]
<GetOrders> getOrdersRequest </GetOrders> [1]
<GetOrders2> getOrders2Request </GetOrders2> [1]
<GetOrders3> getOrders3Request </GetOrders3> [1]
<ProcessingOrders> processingOrdersRequest </ProcessingOrders> [1]
<ProcessingReturns> processingReturnsRequest </ProcessingReturns> [1]
<SubmitReturnRma> submitReturnRmaRequest </SubmitReturnRma> [1]
<SubmitReturnClosure> submitReturnClosureRequest </SubmitReturnClosure> [1]
<ConfirmShipment> confirmShipmentRequest </ConfirmShipment> [1]
<ShortshipLine> shortshipLineRequest </ShortshipLine> [1]
End Choice
Start Choice [1]
<GetCredentials> getCredentialsRequest </GetCredentials> [1]
<GetOverstockTime> getOverstockTimeRequest </GetOverstockTime> [1]
<GetCategories> getCategoriesRequest </GetCategories> [1]
<GetBrands> getBrandsRequest </GetBrands> [1]
End Choice
End Choice
</Request>
Schema Component Representation
<xs:element name="Request">
<xs:complexType>
<xs:sequence>
<xs:element name="MerchantKey" type=" uuid "/>
<xs:choice>
<xs:sequence>
<-- Authorized calls -->
<xs:element name="AuthenticationKey" type=" uuid "/>
<xs:choice>
<xs:element name="SubmitNewProduct" type=" submitNewProductRequest "/>
<xs:element name="ResubmitProduct" type=" resubmitProductRequest "/>
<xs:element name="GetProductStatus" type=" getProductStatusRequest "/>
<xs:element name="GetProductStatus2" type=" getProductStatus2Request "/>
<xs:element name="GetChangedProducts" type=" getChangedProductsRequest "/>
<xs:element name="GetSourceability" type=" getSourceabilityRequest "/>
<xs:element name="GetProduct" type=" getProductRequest "/>
<xs:element name="GetProduct2" type=" getProduct2Request "/>
<xs:element name="AddOption" type=" addOptionRequest "/>
<xs:element name="UpdateQuantity" type=" updateQuantityRequest "/>
<xs:element name="UpdateProduct" type=" updateProductRequest "/>
<xs:element name="GetReturns" type=" getReturnsRequest "/>
<xs:element name="GetOrders" type=" getOrdersRequest "/>
<xs:element name="GetOrders2" type=" getOrders2Request "/>
<xs:element name="GetOrders3" type=" getOrders3Request "/>
<xs:element name="ProcessingOrders" type=" processingOrdersRequest "/>
<xs:element name="ProcessingReturns" type=" processingReturnsRequest "/>
<xs:element name="SubmitReturnRma" type=" submitReturnRmaRequest "/>
<xs:element name="SubmitReturnClosure" type=" submitReturnClosureRequest "/>
<xs:element name="ConfirmShipment" type=" confirmShipmentRequest "/>
<xs:element name="ShortshipLine" type=" shortshipLineRequest "/>
</xs:choice>
</xs:sequence>
<xs:choice>
<-- Unauthorized calls -->
<xs:element name="GetCredentials" type=" getCredentialsRequest "/>
<xs:element name="GetOverstockTime" type=" getOverstockTimeRequest "/>
<xs:element name="GetCategories" type=" getCategoriesRequest "/>
<xs:element name="GetBrands" type=" getBrandsRequest "/>
</xs:choice>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
top

Element: Response

Name Response
Type Locally-defined complex type
Nillable no
Abstract no
Documentation All methods respond with either a Success or Failure element. If a method requires additional information to be returned, it is returned in a separate element, particular to that method. Currently, the following methods return data beyond just Success or Failure:
  • GetOverstockTime
  • GetProductStatus
  • GetProductStatus2
  • GetProduct
  • GetProduct2
  • GetSourceability
  • GetChangedProducts
  • GetReturns
  • GetOrders
  • GetOrders2
  • GetOrders3
  • GetCredentials
  • GetCategories
  • GetBrands
XML Instance Representation
<Response>
Start Choice [0..1]
<GetOverstockTimeResponse> getOverstockTimeResponse </GetOverstockTimeResponse> [1]
<GetProductStatusResponse> getProductStatusResponse </GetProductStatusResponse> [1]
<GetProductStatus2Response> getProductStatus2Response </GetProductStatus2Response> [1]
<GetProductResponse> getProductResponse </GetProductResponse> [1]
<GetProduct2Response> getProduct2Response </GetProduct2Response> [1]
<GetChangedProductsResponse> getChangedProductsResponse </GetChangedProductsResponse> [1]
<GetSourceabilityResponse> getSourceabilityResponse </GetSourceabilityResponse> [1]
<GetReturnsResponse> getReturnsResponse </GetReturnsResponse> [1]
<GetOrdersResponse> getOrdersResponse </GetOrdersResponse> [1]
<GetOrders2Response> getOrders2Response </GetOrders2Response> [1]
<GetOrders3Response> getOrders3Response </GetOrders3Response> [1]
<GetCredentialsResponse> getCredentialsResponse </GetCredentialsResponse> [1]
<GetCategoriesResponse> getCategoriesResponse </GetCategoriesResponse> [1]
<GetBrandsResponse> getBrandsResponse </GetBrandsResponse> [1]
End Choice
Start Choice [1]
<Success> ... </Success> [1]
<Failure> failure </Failure> [1]
<PartialFailure> partialFailure </PartialFailure> [1]
End Choice
</Response>
Schema Component Representation
<xs:element name="Response">
<xs:complexType>
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="GetOverstockTimeResponse" type=" getOverstockTimeResponse "/>
<xs:element name="GetProductStatusResponse" type=" getProductStatusResponse "/>
<xs:element name="GetProductStatus2Response" type=" getProductStatus2Response "/>
<xs:element name="GetProductResponse" type=" getProductResponse "/>
<xs:element name="GetProduct2Response" type=" getProduct2Response "/>
<xs:element name="GetChangedProductsResponse" type=" getChangedProductsResponse "/>
<xs:element name="GetSourceabilityResponse" type=" getSourceabilityResponse "/>
<xs:element name="GetReturnsResponse" type=" getReturnsResponse "/>
<xs:element name="GetOrdersResponse" type=" getOrdersResponse "/>
<xs:element name="GetOrders2Response" type=" getOrders2Response "/>
<xs:element name="GetOrders3Response" type=" getOrders3Response "/>
<xs:element name="GetCredentialsResponse" type=" getCredentialsResponse "/>
<xs:element name="GetCategoriesResponse" type=" getCategoriesResponse "/>
<xs:element name="GetBrandsResponse" type=" getBrandsResponse "/>
</xs:choice>
<xs:choice>
<xs:element name="Success"/>
<xs:element name="Failure" type=" failure "/>
<xs:element name="PartialFailure" type=" partialFailure "/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
top

Attribute: requiresAuthentication

Name requiresAuthentication
Type xs:boolean
XML Instance Representation
requiresAuthentication=" xs:boolean"
Schema Component Representation
<xs:attribute name="requiresAuthentication" type=" xs:boolean "/>
top

Attribute: classification

Name classification
Type xs:string
XML Instance Representation
classification=" xs:string"
Schema Component Representation
<xs:attribute name="classification" type=" xs:string "/>
top

Complex Type: getOverstockTimeRequest

Super-types: None
Sub-types: None
Name getOverstockTimeRequest
Abstract no
Documentation This request is used to sync time with Overstock.com Auctions.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <GetOverstockTime />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getOverstockTimeRequest"/>
top

Complex Type: getOverstockTimeResponse

Super-types: None
Sub-types: None
Name getOverstockTimeResponse
Abstract no
Documentation This response returns the current Overstock.com time.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetOverstockTimeResponse>
    <Time>2005-08-25T11:08:02</Time>
  </GetOverstockTimeResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<Time> xs:dateTime </Time> [1]
</...>
Schema Component Representation
<xs:complexType name="getOverstockTimeResponse">
<xs:sequence>
<xs:element name="Time" type=" xs:dateTime "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getCredentialsRequest

Super-types: None
Sub-types: None
Name getCredentialsRequest
Abstract no
Documentation This request is used to retrieve an AuthenticationKey and a LoginUrl. An end user should be directed to the LoginUrl where they will be asked to log in. Once the user logs in, the AuthenticationKey will be activated and will be linked to that user. The AuthenticationKey should be used for all other communication on behalf of that user.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <GetCredentials />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getCredentialsRequest"/>
top

Complex Type: getCredentialsResponse

Super-types: None
Sub-types: None
Name getCredentialsResponse
Abstract no
Documentation This response is returned by a call to GetCredentials.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetCredentialsResponse>
    <AuthenticationKey>31E34B1E-71EE-4D2D-8015-FA5345DD73C9</AuthenticationKey>
    <LoginUrl>https://sapidev.overstock.com/shoppingApi/login?key=DE0141D0-9297-4B8F-ACBC-0CE5497E458F</LoginUrl>
  </GetCredentialsResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<AuthenticationKey> uuid </AuthenticationKey> [1] ?
<LoginUrl> url </LoginUrl> [1] ?
</...>
Schema Component Representation
<xs:complexType name="getCredentialsResponse">
<xs:sequence>
<xs:element name="AuthenticationKey" type=" uuid "/>
<xs:element name="LoginUrl" type=" url "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getCategoriesRequest

Super-types: None
Sub-types: None
Name getCategoriesRequest
Abstract no
Documentation This request is used to retrieve the current taxonomy.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <GetCategories />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getCategoriesRequest"/>
top

Complex Type: getCategoriesResponse

Super-types: None
Sub-types: None
Name getCategoriesResponse
Abstract no
Documentation This response is returned by a call to GetCategories. It includes all stores,store lists, categories and subcategories that belong to the main store in an hierarchical structure.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetCategoriesResponse>
    <Category>
      <Id>1</Id>
      <Name>Home & Garden</Name>
      <Category>
        <Id>1</Id>
        <Name>Bedding & Bath</Name>
        <Category>
          <Id>1299</Id>
          <Name>Luxury Bedding</Name>
          <Category>
            <Id>12378</Id>
            <Name>Bedskirts</Name>
          </Category>
          <Category>
            <Id>12379</Id>
            <Name>Blankets</Name>
          </Category>
          <Category>
            <Id>5390</Id>
            <Name>Sheet Sets</Name>
          </Category>
          <Category>
            <Id>5391</Id>
            <Name>Comforters</Name>
          </Category>
          <Category>
            <Id>5392</Id>
            <Name>Duvet Covers</Name>
          </Category>
          <Category>
            <Id>5393</Id>
            <Name>Pillows</Name>
          </Category>
          <Category>
            <Id>5394</Id>
            <Name>Quilts</Name>
          </Category>
          <Category>
            <Id>6401</Id>
            <Name>Throw Blankets</Name>
          </Category>
          <Category>
            <Id>6402</Id>
            <Name>Pillowcases & Shams</Name>
          </Category>
        </Category>
        <Category>
          <Id>240</Id>
          <Name>Bedding</Name>
          <Category>
            <Id>1</Id>
            <Name>Sheet Sets</Name>
          </Category>
          <Category>
            <Id>11248</Id>
            <Name>Bedskirts</Name>
          </Category>
        </Category>
      </Category>
    </Category>
  </GetCategoriesResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<Category> category </Category> [1..*] ?
</...>
Schema Component Representation
<xs:complexType name="getCategoriesResponse">
<xs:sequence>
<xs:element name="Category" type=" category " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getBrandsRequest

Super-types: None
Sub-types: None
Name getBrandsRequest
Abstract no
Documentation This request is used to retrieve a list of accepted Brands for product submissions.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <GetBrands />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getBrandsRequest"/>
top

Complex Type: getBrandsResponse

Super-types: None
Sub-types: None
Name getBrandsResponse
Abstract no
Documentation This response is returned by a call to GetBrands.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetBrandsResponse>
    <Brand>
      <Id>0</Id>
      <Name>None</Name>
    </Brand>
    <Brand>
      <Id>1</Id>
      <Name>Hitachi</Name>
    </Brand>
    <Brand>
      <Id>2<Id>
      <Name>Samsonite</Name>
    </Brand>
  </GetBrandsResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<Brand> [1..*]
<Id> xs:integer </Id> [1] ?
<Name> xs:string (length <= 100) </Name> [1] ?
</Brand>
</...>
Schema Component Representation
<xs:complexType name="getBrandsResponse">
<xs:sequence>
<xs:element name="Brand" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type=" xs:integer "/>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="100"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: submitNewProductRequest

Super-types: None
Sub-types: None
Name submitNewProductRequest
Abstract no
Documentation This request is used by a vendor to submit a new product.
Products with illegal skus will be rejected.

The following fields will no longer be supported at a later date:
<Author>
(when including images)
<Thumbnail>
<Large>
<Main>

The following are new additional fields:
<ProductDimensions> (will become a required tag at a later date)
<ISBN>
(when including images)
<MainImage>
<Mouseover_Big1>
<Mouseover_Big2>

Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <SubmitNewProduct>
    <Product>
      <Name>Test Product Name</Name>
      <ShortName>Test Product</ShortName>
      <Summary>Test Summary</Summary>
      <Description>Test Description</Description>
      <CategoryId>4</CategoryId>
      <Pricing>
        <MSRP>23.45</MSRP>
        <MSRPSalesLocation>Oregon</MSRPSalesLocation>
        <StreetPrice>44.67</StreetPrice>
        <NormalWholesalePrice>45.67</NormalWholesalePrice>
        <SuggestedSellingPrice>21.95</SuggestedSellingPrice>
      </Pricing>
      <PackageDimensions>
        <Length>3</Length>
        <Width>3</Width>
        <Height>2</Height>
      </PackageDimensions>
      <SourceZipCode>23456</SourceZipCode>
      <CountryOfOrigin>USA</CountryOfOrigin>
      <Condition>REFURBISHED</Condition>
      <Options>
        <Option>
          <VendorSku>test234sku</VendorSku>
          <UPC>asdlfkjasdlfk</UPC>
          <Description>Desc</Description>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3.4</Weight>
        </Option>
      </Options>
      <Manufacturer>
        <Name>ACME</Name>
        <PartNumber>0123-A45</PartNumber>
        <ModelNumber>16868KED</ModelNumber>
      </Manufacturer>
      <Brand>0</Brand>
      <Warranty>
        <Provider>M</Provider>
        <Description>1 Year Warranty</Description>
        <ContactPhoneNumber>8015551234</ContactPhoneNumber>
      </Warranty>
      <Specifications>
        <Materials>Plastic</Materials>
        <Author>John Doe</Author>
      </Specifications>
      <Images>
        <Thumbnail>
          R0lGODlhEAAQAIQUAAAAAAQCAAcEAAoGABEKAB8TADMfAEMoAGM7AHpJAHtKAIJOAJJYAL9zADOZ
          /9WAAPiVAPyXAP6YAP+ZAP///////////////////////////////////////////////yH+FUNy
          ZWF0ZWQgd2l0aCBUaGUgR0lNUAAh+QQBCgAfACwAAAAAEAAQAAAFT6AjjmQ5Umiqoic6vS9QTKno
          wvFMUzYOyzCeg+LLBXtF4EtITOpoSJ8SOixKpkyY4tB4AAzHYZMBCAgAiyXTFUkQBgjIbr2qC8X2
          mmlPCgEAOw==
        </Thumbnail>
        <Main>
          R0lGODlhEAAQAIQUAAAAAAQCAAcEAAoGABEKAB8TADMfAEMoAGM7AHpJAHtKAIJOAJJYAL9zADOZ
          /9WAAPiVAPyXAP6YAP+ZAP///////////////////////////////////////////////yH+FUNy
          ZWF0ZWQgd2l0aCBUaGUgR0lNUAAh+QQBCgAfACwAAAAAEAAQAAAFT6AjjmQ5Umiqoic6vS9QTKno
          wvFMUzYOyzCeg+LLBXtF4EtITOpoSJ8SOixKpkyY4tB4AAzHYZMBCAgAiyXTFUkQBgjIbr2qC8X2
          mmlPCgEAOw==
        </Main>
        <Large>
          R0lGODlhEAAQAIQUAAAAAAQCAAcEAAoGABEKAB8TADMfAEMoAGM7AHpJAHtKAIJOAJJYAL9zADOZ
          /9WAAPiVAPyXAP6YAP+ZAP///////////////////////////////////////////////yH+FUNy
          ZWF0ZWQgd2l0aCBUaGUgR0lNUAAh+QQBCgAfACwAAAAAEAAQAAAFT6AjjmQ5Umiqoic6vS9QTKno
          wvFMUzYOyzCeg+LLBXtF4EtITOpoSJ8SOixKpkyY4tB4AAzHYZMBCAgAiyXTFUkQBgjIbr2qC8X2
          mmlPCgEAOw==
        </Large>
      </Images>
    </Product>
  </SubmitNewProduct>
</Request>

or

<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <SubmitNewProduct>
    <Product>
      <Name>Test Product Name</Name>
      <ShortName>Test Product</ShortName>
      <Summary>Test Summary</Summary>
      <Description>Test Description</Description>
      <CategoryId>4</CategoryId>
      <Pricing>
        <MSRP>23.45</MSRP>
        <MSRPSalesLocation>Oregon</MSRPSalesLocation>
        <StreetPrice>44.67</StreetPrice>
        <NormalWholesalePrice>45.67</NormalWholesalePrice>
        <SuggestedSellingPrice>21.95</SuggestedSellingPrice>
      </Pricing>
      <PackageDimensions>
        <Length>3</Length>
        <Width>3</Width>
        <Height>2</Height>
      </PackageDimensions>
      <SourceZipCode>23456</SourceZipCode>
      <CountryOfOrigin>USA</CountryOfOrigin>
      <Condition>REFURBISHED</Condition>
      <Options>
        <Option>
          <VendorSku>test234sku</VendorSku>
          <UPC>asdlfkjasdlfk</UPC>
          <Description>Desc</Description>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3.4</Weight>
        </Option>
      </Options>
      <Manufacturer>
        <Name>ACME</Name>
        <PartNumber>0123-A45</PartNumber>
        <ModelNumber>16868KED</ModelNumber>
      </Manufacturer>
      <Brand>0</Brand>
      <Warranty>
        <Provider>M</Provider>
        <Description>1 Year Warranty</Description>
        <ContactPhoneNumber>8015551234</ContactPhoneNumber>
      </Warranty>
      <Specifications>
        <Materials>Plastic</Materials>
        <Author>John Doe</Author>
      </Specifications>
      <ImagesURLS>
        <Thumbnail>
          http://www.example.com/thumbnail.jpg
        </Thumbnail>
        <Main>
          http://www.example.com/main.jpg
        </Main>
        <Large>
          http://www.example.com/large.jpg
        </Large>
      </ImagesURLS>
    </Product>
  </SubmitNewProduct>
</Request>

or


<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <SubmitNewProduct>
    <Product>
      <Name>Test Product Name</Name>
      <ShortName>Test Product</ShortName>
      <Summary>Test Summary</Summary>
      <Description>Test Description</Description>
      <CategoryId>4</CategoryId>
      <ISBN>1234567890123</ISBN>
      <Pricing>
        <MSRP>23.45</MSRP>
        <MSRPSalesLocation>Oregon</MSRPSalesLocation>
        <StreetPrice>44.67</StreetPrice>
        <NormalWholesalePrice>45.67</NormalWholesalePrice>
        <SuggestedSellingPrice>21.95</SuggestedSellingPrice>
      </Pricing>
      <ProductDimensions>5x5x5</ProductDimensions>
      <PackageDimensions>
        <Length>3</Length>
        <Width>3</Width>
        <Height>2</Height>
      </PackageDimensions>
      <SourceZipCode>23456</SourceZipCode>
      <CountryOfOrigin>USA</CountryOfOrigin>
      <Condition>NEW</Condition>
      <Options>
        <Option>
          <VendorSku>test234sku</VendorSku>
          <UPC>asdlfkjasdlfk</UPC>
          <Description>Desc</Description>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3.4</Weight>
        </Option>
      </Options>
      <Manufacturer>
        <Name>ACME</Name>
      </Manufacturer>
      <Brand>0</Brand>
      <Warranty>
        <Provider>M</Provider>
        <Description>1 Year Warranty</Description>
        <ContactPhoneNumber>8015551234</ContactPhoneNumber>
      </Warranty>
      <Specifications>
        <Materials>Paper</Materials>
      </Specifications>
      <ImagesURLS>
        <MainImage>
          http://www.example.com/main.jpg
        </MainImage>
        <Mouseover_Big1>
          http://www.example.com/mouse1.jpg
        </Mouseover_Big1>
        <Mouseover_Big2>
          http://www.example.com/mouse2.jpg
        </Mouseover_Big2>
      </ImagesURLS>
    </Product>
  </SubmitNewProduct>
</Request>
XML Instance Representation
<...>
<Product> [1..*]
<Name> simpleString (length >= 3) </Name> [1] ?
<ShortName> xs:string (length <= 50) </ShortName> [1] ?
<Summary> xs:string (length <= 255) </Summary> [1] ?
<Description> description </Description> [1] ?
<CategoryId> xs:integer </CategoryId> [1] ?
<ISBN> xs:string (length <= 20) </ISBN> [0..1] ?
<ReleaseDate> xs:dateTime </ReleaseDate> [0..1] ?
<Pricing> [1]
<MSRP> money </MSRP> [1] ?
<MSRPSalesLocation> xs:string </MSRPSalesLocation> [0..1] ?
<StreetPrice> money </StreetPrice> [1] ?
<NormalWholesalePrice> money </NormalWholesalePrice> [0..1] ?
<SuggestedSellingPrice> money </SuggestedSellingPrice> [1] ?
</Pricing>
<ProductDimensions> xs:string (length <= 150) </ProductDimensions> [0..1] ?
<PackageDimensions> dimensions </PackageDimensions> [1] ?
<LTL> xs:boolean </LTL> [0..1] ?
<ShipAlone> xs:boolean </ShipAlone> [0..1] ?
<SourceZipCode> zipCode </SourceZipCode> [1] ?
<CountryOfOrigin> isoCountryCode </CountryOfOrigin> [1] ?
<Condition> productCondition </Condition> [1] ?
<Options> options </Options> [1]
<Manufacturer> manufacturer </Manufacturer> [1] ?
<Brand> xs:integer </Brand> [1] ?
<Warranty> warranty </Warranty> [0..1] ?
<Specifications> specifications </Specifications> [0..1] ?
Start Choice [0..1]
<Images> imageGroup </Images> [1] ?
<ImagesURLS> imageURLGroup </ImagesURLS> [1] ?
End Choice
</Product>
</...>
Schema Component Representation
<xs:complexType name="submitNewProductRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="Product" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:group ref=" commonProductGroup1 "/>
<xs:element name="Description" type=" description "/>
<xs:group ref=" commonProductGroup2 "/>
<xs:element name="Pricing">
<xs:complexType>
<xs:complexContent>
<xs:extension base=" pricing ">
<xs:sequence>
<xs:element name="SuggestedSellingPrice" type=" money "/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:group ref=" commonProductGroup3 "/>
<xs:element name="Options" type=" options "/>
<xs:group ref=" commonProductGroup4 "/>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="Images" type=" imageGroup "/>
<xs:element name="ImagesURLS" type=" imageURLGroup "/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: resubmitProductRequest

Super-types: None
Sub-types: None
Name resubmitProductRequest
Abstract no
Documentation This request is to make changes to product that has been submitted previously. When this call is made, it results in the product being pulled off Overstocks website and then begins the process of the changes going through approval. It does not allow changes to be made to the product description, suggested selling price, or vendor SKU.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <ResubmitProduct>
    <Product>
      <ProductSku>123</ProductSku>
      <Name>Test Product Name</Name>
      <ShortName>Test Product</ShortName>
      <Summary>Test Summary</Summary>
      <CategoryId>4</CategoryId>
      <Pricing>
        <MSRP>23.45</MSRP>
        <MSRPSalesLocation>Oregon</MSRPSalesLocation>
        <StreetPrice>44.67</StreetPrice>
        <NormalWholesalePrice>45.67</NormalWholesalePrice>
      </Pricing>
      <PackageDimensions>
        <Length>3</Length>
        <Width>3</Width>
        <Height>2</Height>
      </PackageDimensions>
      <SourceZipCode>23456</SourceZipCode>
      <CountryOfOrigin>USA</CountryOfOrigin>
      <Condition>NEW</Condition>
      <Options>
        <Option>
          <OptionSku>test234sku</OptionSku>
          <UPC>asdlfkjasdlfk</UPC>
          <Description>Test Description</Description>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3.5</Weight>
        </Option>
      </Options>
      <Manufacturer>
        <Name>ACME</Name>
        <PartNumber>0123-A45</PartNumber>
        <ModelNumber>16868KED</ModelNumber>
      </Manufacturer>
      <Brand>0</Brand>
      <Warranty>
        <Provider>M</Provider>
        <Description>1 Year Warranty<Description>
        <ContactPhoneNumber>8015551234</ContactPhoneNumber>
      </Warranty>
      <Specifications>
        <Materials>Plastic</Materials>
        <Author>John Doe</Author>
      </Specifications>
      <Images>
        <Thumbnail>
          R0lGODlhEAAQAIQUAAAAAAQCAAcEAAoGABEKAB8TADMfAEMoAGM7AHpJAHtKAIJOAJJYAL9zADOZ
          /9WAAPiVAPyXAP6YAP+ZAP///////////////////////////////////////////////yH+FUNy
          ZWF0ZWQgd2l0aCBUaGUgR0lNUAAh+QQBCgAfACwAAAAAEAAQAAAFT6AjjmQ5Umiqoic6vS9QTKno
          wvFMUzYOyzCeg+LLBXtF4EtITOpoSJ8SOixKpkyY4tB4AAzHYZMBCAgAiyXTFUkQBgjIbr2qC8X2
          mmlPCgEAOw==
        </Thumbnail>
        <Main>
          R0lGODlhEAAQAIQUAAAAAAQCAAcEAAoGABEKAB8TADMfAEMoAGM7AHpJAHtKAIJOAJJYAL9zADOZ
          /9WAAPiVAPyXAP6YAP+ZAP///////////////////////////////////////////////yH+FUNy
          ZWF0ZWQgd2l0aCBUaGUgR0lNUAAh+QQBCgAfACwAAAAAEAAQAAAFT6AjjmQ5Umiqoic6vS9QTKno
          wvFMUzYOyzCeg+LLBXtF4EtITOpoSJ8SOixKpkyY4tB4AAzHYZMBCAgAiyXTFUkQBgjIbr2qC8X2
          mmlPCgEAOw==
        </Main>
        <Large>
          R0lGODlhEAAQAIQUAAAAAAQCAAcEAAoGABEKAB8TADMfAEMoAGM7AHpJAHtKAIJOAJJYAL9zADOZ
          /9WAAPiVAPyXAP6YAP+ZAP///////////////////////////////////////////////yH+FUNy
          ZWF0ZWQgd2l0aCBUaGUgR0lNUAAh+QQBCgAfACwAAAAAEAAQAAAFT6AjjmQ5Umiqoic6vS9QTKno
          wvFMUzYOyzCeg+LLBXtF4EtITOpoSJ8SOixKpkyY4tB4AAzHYZMBCAgAiyXTFUkQBgjIbr2qC8X2
          mmlPCgEAOw==
        </Large>
      </Images>
    </Product>
  </ResubmitProduct>
</Request>

or

<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <ResubmitProduct>
    <Product>
      <ProductSku>123</ProductSku>
      <Name>Test Product Name</Name>
      <ShortName>Test Product</ShortName>
      <Summary>Test Summary</Summary>
      <CategoryId>4</CategoryId>
      <Pricing>
        <MSRP>23.45</MSRP>
        <MSRPSalesLocation>Oregon</MSRPSalesLocation>
        <StreetPrice>44.67</StreetPrice>
        <NormalWholesalePrice>45.67</NormalWholesalePrice>
      </Pricing>
      <PackageDimensions>
        <Length>3</Length>
        <Width>3</Width>
        <Height>2</Height>
      </PackageDimensions>
      <SourceZipCode>23456</SourceZipCode>
      <CountryOfOrigin>USA</CountryOfOrigin>
      <Condition>NEW</Condition>
      <Options>
        <Option>
          <OptionSku>test234sku</OptionSku>
          <UPC>asdlfkjasdlfk</UPC>
          <Description>Test Description</Description>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3.5</Weight>
        </Option>
      </Options>
      <Manufacturer>
        <Name>ACME</Name>
        <PartNumber>0123-A45</PartNumber>
        <ModelNumber>16868KED</ModelNumber>
      </Manufacturer>
      <Brand>0</Brand>
      <Warranty>
        <Provider>M</Provider>
        <Description>1 Year Warranty<Description>
        <ContactPhoneNumber>8015551234</ContactPhoneNumber>
      </Warranty>
      <Specifications>
        <Materials>Plastic</Materials>
        <Author>John Doe</Author>
      </Specifications>
      <ImagesURLS>
        <Thumbnail>
          http://www.example.com/thumbnail.jpg
        </Thumbnail>
        <Main>
          http://www.example.com/main.jpg
        </Main>
        <Large>
          http://www.example.com/large.jpg
        </Large>
      </ImagesURLS>
    </Product>
  </ResubmitProduct>
</Request>
XML Instance Representation
<...>
<Product> [1..*]
<ProductSku> sku </ProductSku> [1] ?
<Name> simpleString (length >= 3) </Name> [1] ?
<ShortName> xs:string (length <= 50) </ShortName> [1] ?
<Summary> xs:string (length <= 255) </Summary> [1] ?
<CategoryId> xs:integer </CategoryId> [1] ?
<ISBN> xs:string (length <= 20) </ISBN> [0..1] ?
<ReleaseDate> xs:dateTime </ReleaseDate> [0..1] ?
<Pricing> pricing </Pricing> [1]
<ProductDimensions> xs:string (length <= 150) </ProductDimensions> [0..1] ?
<PackageDimensions> dimensions </PackageDimensions> [1] ?
<LTL> xs:boolean </LTL> [0..1] ?
<ShipAlone> xs:boolean </ShipAlone> [0..1] ?
<SourceZipCode> zipCode </SourceZipCode> [1] ?
<CountryOfOrigin> isoCountryCode </CountryOfOrigin> [1] ?
<Condition> productCondition </Condition> [1] ?
<Options> [1]
<Option> [1..*]
<OptionSku> sku </OptionSku> [1] ?
<UPC> xs:string (length <= 15) </UPC> [0..1] ?
<Description> optionDescription </Description> [1] ?
<Cost> money </Cost> [1] ?
<Quantity> xs:integer </Quantity> [1] ?
<Weight> xs:decimal </Weight> [1] ?
</Option>
</Options>
<Manufacturer> manufacturer </Manufacturer> [1] ?
<Brand> xs:integer </Brand> [1] ?
<Warranty> warranty </Warranty> [0..1] ?
<Specifications> specifications </Specifications> [0..1] ?
Start Choice [0..1]
<Images> imageGroup </Images> [1] ?
<ImagesURLS> imageURLGroup </ImagesURLS> [1] ?
End Choice
</Product>
</...>
Schema Component Representation
<xs:complexType name="resubmitProductRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="Product" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductSku" type=" sku "/>
<xs:group ref=" commonProductGroup1 "/>
<xs:group ref=" commonProductGroup2 "/>
<xs:element name="Pricing" type=" pricing "/>
<xs:group ref=" commonProductGroup3 "/>
<xs:element name="Options">
<xs:complexType>
<xs:sequence>
<xs:element name="Option" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="OptionSku" type=" sku "/>
<xs:group ref=" option "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref=" commonProductGroup4 "/>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="Images" type=" imageGroup "/>
<xs:element name="ImagesURLS" type=" imageURLGroup "/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: getProductStatusRequest

Super-types: None
Sub-types: None
Name getProductStatusRequest
Abstract no
Documentation This request is used to check the approval status of a product based on either a VendorSku or an Overstock ProductSku. The request is generally made with a VendorSku if the vendor has not made a GetProductStatusRequest previous for a product and does not yet have an Overstock ProductSku assigned to that product. If a request has been made before and the vendor has the ProductSku, they can make the request with it. Note: In production for new products wait at least 20 minutes after sending a SubmitNewProduct request before attempting to make this request.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetProductStatus>
    <ProductSku>111</ProductSku>
    <VendorSku>2222</VendorSku>
    <ProductSku>333</ProductSku>
    <VendorSku>4444</VendorSku>
    <VendorSku>5555</VendorSku>
  </GetProductStatus>
</Request>
XML Instance Representation
<...>
Start Choice [1..*]
<VendorSku> sku </VendorSku> [1..*] ?
<ProductSku> sku </ProductSku> [1..*] ?
End Choice
</...>
Schema Component Representation
<xs:complexType name="getProductStatusRequest" requiresAuthentication="true">
<xs:choice maxOccurs="unbounded">
<xs:element name="VendorSku" type=" sku " maxOccurs="unbounded"/>
<xs:element name="ProductSku" type=" sku " maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
top

Complex Type: getProductStatusResponse

Super-types: None
Sub-types: None
Name getProductStatusResponse
Abstract no
Documentation This response returns the approval status. If the call was made with an Overstock ProductSku, only the status of that ProductSku is returned. If the call was made with a Vendor SKU the approval status is returned along with the mapping of the VendorSku to the corresponding ProductSku and OptionSkus if they are available.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetProductStatusResponse>
    <Status>
      <OnSite>
        <ProductSku>8468</ProductSku>
      </OnSite>
      <Approved>
        <ProductSku>111</ProductSku>
        <Product>
          <ProductSku>523</ProductSku>
          <Options>
            <Option>
              <VendorSku>2222</VendorSku>
              <OptionSku>523-000-478</OptionSku>
            <Option>
          </Options>
        <Product>
      </Approved>
      <InCreative>
        <ProductSku>868</ProductSku>
      </InCreative>
      <Pending>
        <ProductSku>333</ProductSku>
        <Product>
          <ProductSku>593</ProductSku>
          <Options>
            <Option>
              <VendorSku>4444</VendorSku>
              <OptionSku>593-000-859</OptionSku>
            <Option>
          </Options>
        <Product>
        <Product>
          <Options>
            <Option>
              <VendorSku>5555</VendorSku>
            <Option>
          </Options>
        <Product>
      </Pending>
      <Discontinued>
        <ProductSku>897</ProductSku>
      </Discontinued>
      <Problem>
        <ProductSku>4686</ProductSku>
      </Problem>
    </Status>
  </GetProductStatusResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<Status> approvalStatus </Status> [1] ?
</...>
Schema Component Representation
<xs:complexType name="getProductStatusResponse">
<xs:sequence>
<xs:element name="Status" type=" approvalStatus "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getProductStatus2Request

Super-types: None
Sub-types: None
Name getProductStatus2Request
Abstract no
Documentation This request is used to check the approval status of a product based on either a VendorSku or an Overstock ProductSku. The request is generally made with a VendorSku if the vendor has not made a GetProductStatusRequest previous for a product and does not yet have an Overstock ProductSku assigned to that product. If a request has been made before and the vendor has the ProductSku, they can make the request with it. Note: In production for new products wait at least 20 minutes after sending a SubmitNewProduct request before attempting to make this request.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetProductStatus2>
    <ProductSku>176283</ProductSku>
    <ProductSku>176301</ProductSku>
    <VendorSku>Phone3</VendorSku>
  </GetProductStatus2>
</Request>
XML Instance Representation
<...>
Start Choice [1..*]
<VendorSku> sku </VendorSku> [1..*] ?
<ProductSku> sku </ProductSku> [1..*] ?
End Choice
</...>
Schema Component Representation
<xs:complexType name="getProductStatus2Request" requiresAuthentication="true">
<xs:choice maxOccurs="unbounded">
<xs:element name="VendorSku" type=" sku " maxOccurs="unbounded"/>
<xs:element name="ProductSku" type=" sku " maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
top

Complex Type: getProductStatus2Response

Super-types: None
Sub-types: None
Name getProductStatus2Response
Abstract no
Documentation This response returns the approval status. If the call was made with an Overstock ProductSku, only the status of that ProductSku is returned. If the call was made with a Vendor SKU the approval status is returned along with the mapping of the VendorSku to the corresponding ProductSku and OptionSkus if they are available.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetProductStatus2Response>
    <Product>
      <ProductSku>176283</ProductSku>
      <Status>ONSITE</Status>
    </Product>
    <Product>
      <ProductSku>176301</ProductSku>
      <Status>EZIBA</Status>
    </Product>
    <Product>
      <ProductSku>155240</ProductSku>
      <Status>12</Status>
      <Options>
        <Option>
          <OptionSku>155240-000-003</OptionSku>
          <VendorSku>Phone3</VendorSku>
        </Option>
      </Options>
    </Product>
  </GetProductStatus2Response>
  <Success />
</Response>
XML Instance Representation
<...>
<Product> productStatusDetails </Product> [0..*] ?
</...>
Schema Component Representation
<xs:complexType name="getProductStatus2Response">
<xs:sequence>
<xs:element name="Product" type=" productStatusDetails " maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getSourceabilityRequest

Super-types: None
Sub-types: None
Name getSourceabilityRequest
Abstract no
Documentation This request is used to check the sourceability of a product based on either a VendorSku or an OptionSku. The request is generally made with a VendorSku if the vendor has not made a GetSourceabilityRequest previous for a product and does not yet have an OptionSku assigned to that product. If a request has been made before and the vendor has the OptionSku, they can make the request with it. Note: In production for new products wait at least 20 minutes after sending a SubmitNewProduct request before attempting to make this request.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetSourceability>
    <VendorSku>2222-000-002</VendorSku>
    <VendorSku>4444-000-004</VendorSku>
    <VendorSku>5555-000-005</VendorSku>
    <OptionSku>333-000-001</OptionSku>
    <OptionSku>111-000-001</OptionSku>
  </GetSourceability>
</Request>
XML Instance Representation
<...>
<VendorSku> sku </VendorSku> [0..*] ?
<OptionSku> sku </OptionSku> [0..*] ?
</...>
Schema Component Representation
<xs:complexType name="getSourceabilityRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="VendorSku" type=" sku " maxOccurs="unbounded" minOccurs="0"/>
<xs:element name="OptionSku" type=" sku " maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getSourceabilityResponse

Super-types: None
Sub-types: None
Name getSourceabilityResponse
Abstract no
Documentation This response returns the sourceability. If the call was made with an Overstock ProductSku, only the status of that ProductSku is returned. If the call was made with a Vendor SKU the approval status is returned along with the mapping of the VendorSku to the corresponding ProductSku and OptionSkus if they are available.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetSourceabilityResponse>
  <Sourceable>
    <VendorSku>2222-000-002</VendorSku>
    <OptionSku>8468-000-001</OptionSku>
    <OptionSku>111-000-001</OptionSku>
  </Sourceable>
  <NonSourceable>
    <VendorSku>963-57-45974</VendorSku>
    <OptionSku>636-000-001</OptionSku>
    <OptionSku>333-000-003</OptionSku>
  </NonSourceable>
  </GetSourceabilityResponse> <Success />
  </Response>
XML Instance Representation
<...>
<Sourceable> [0..*]
<VendorSku> sku </VendorSku> [0..*] ?
<OptionSku> sku </OptionSku> [0..*] ?
</Sourceable>
<NonSourceable> [0..*]
<VendorSku> sku </VendorSku> [0..*] ?
<OptionSku> sku </OptionSku> [0..*] ?
</NonSourceable>
</...>
Schema Component Representation
<xs:complexType name="getSourceabilityResponse">
<xs:sequence>
<xs:element name="Sourceable" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="VendorSku" type=" sku " maxOccurs="unbounded" minOccurs="0"/>
<xs:element name="OptionSku" type=" sku " maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="NonSourceable" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="VendorSku" type=" sku " maxOccurs="unbounded" minOccurs="0"/>
<xs:element name="OptionSku" type=" sku " maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: getChangedProductsRequest

Super-types: None
Sub-types: None
Name getChangedProductsRequest
Abstract no
Documentation This request is used to return a list of Product SKU's that have had a change made in some part of their product information.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetChangedProducts />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getChangedProductsRequest" requiresAuthentication="true"/>
top

Complex Type: getChangedProductsResponse

Super-types: None
Sub-types: None
Name getChangedProductsResponse
Abstract no
Documentation This response is a list of Product ID's belonging to products that have had a change in some part of the product information.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetChangedProductsResponse>
    <ProductSku>1111</ProductSku>
    <ProductSku>2222</ProductSku>
    <ProductSku>3333</ProductSku>
    <ProductSku>4444</ProductSku>
  </GetChangedProductsResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<ProductSku> sku </ProductSku> [0..*] ?
</...>
Schema Component Representation
<xs:complexType name="getChangedProductsResponse">
<xs:sequence>
<xs:element name="ProductSku" type=" sku " minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getProductRequest

Super-types: None
Sub-types: None
Name getProductRequest
Abstract no
Documentation This request is used to obtain a products information based on a product SKU.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetProduct>
    <ProductSku>12345</ProductSku>
    <ProductSku>67890</ProductSku>
  </GetProduct>
</Request>
XML Instance Representation
<...>
<ProductSku> sku </ProductSku> [1..*] ?
</...>
Schema Component Representation
<xs:complexType name="getProductRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="ProductSku" type=" sku " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getProductResponse

Super-types: None
Sub-types: None
Name getProductResponse
Abstract no
Documentation This returns the product requested.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetProductResponse>
    <Product>
      <ProductSku>123</ProductSku>
      <Name>Test Product Name</Name>
      <ShortName>Test Product</ShortName>
      <Summary>Test Summary</Summary>
      <Description>Test Description</Description>
      <Status>IN_CREATIVE</Status>
      <CategoryId>4</CategoryId>
      <Pricing>
        <MSRP>23.45</MSRP>
        <MSRPSalesLocation>23.45</MSRPSalesLocation>
        <StreetPrice>44.67</StreetPrice>
        <NormalWholesalePrice>45.67</NormalWholesalePrice>
        <SuggestedSellingPrice>21.95</SuggestedSellingPrice>
      </Pricing>
      <PackageDimensions>
        <Length>3.2</Length>
        <Width>3.4</Width>
        <Height>2.8</Height>
      </PackageDimensions>
      <SourceZipCode>23456</SourceZipCode>
      <CountryOfOrigin>USA</CountryOfOrigin>
      <Condition>NEW</Condition>
      <Options>
        <Option>
          <VendorSku>test234sku</VendorSku>
          <OptionSku>123-000-001</OptionSku>
          <Description>Desc</Description>
          <UPC>asdlfkjasdlfk</UPC>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3.6</Weight>
        </Option>
      </Options>
      <Manufacturer>
        <Name>ACME</Name>
        <PartNumber>31142</PartNumber>
        <ModelNumber>45222</ModelNumber>
      </Manufacturer>
      <Brand>0</Brand>
      <Warranty>
        <Provider>M</Provider>
        <Description>3 Year Warranty</Description>
        <ContactPhoneNumber>8015551234</ContactPhoneNumber>
      </Warranty>
      <Specifications>
        <Materials>Plastic</Materials>
        <Author>John Doe</Author>
      </Specifications>
      <Images>
        <Thumbnail>http://test</Thumbnail>
        <Main>http://test</Main>
        <Large>http://test</Large>
      </Images>
    </Product>
  </GetProductResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<Product> [1]
<ProductSku> sku </ProductSku> [1] ?
<Name> simpleString (length >= 3) </Name> [1] ?
<ShortName> xs:string (length <= 50) </ShortName> [1] ?
<Summary> xs:string (length <= 255) </Summary> [1] ?
<Description> description </Description> [1]
<Status> productStatus </Status> [1]
<CategoryId> xs:integer </CategoryId> [1] ?
<ISBN> xs:string (length <= 20) </ISBN> [0..1] ?
<ReleaseDate> xs:dateTime </ReleaseDate> [0..1] ?
<Pricing> [1]
<MSRP> money </MSRP> [1] ?
<MSRPSalesLocation> xs:string </MSRPSalesLocation> [0..1] ?
<StreetPrice> money </StreetPrice> [1] ?
<NormalWholesalePrice> money </NormalWholesalePrice> [0..1] ?
<SuggestedSellingPrice> money </SuggestedSellingPrice> [1] ?
</Pricing>
<ProductDimensions> xs:string (length <= 150) </ProductDimensions> [0..1] ?
<PackageDimensions> dimensions </PackageDimensions> [1] ?
<LTL> xs:boolean </LTL> [0..1] ?
<ShipAlone> xs:boolean </ShipAlone> [0..1] ?
<SourceZipCode> zipCode </SourceZipCode> [1] ?
<CountryOfOrigin> isoCountryCode </CountryOfOrigin> [1] ?
<Condition> productCondition </Condition> [1] ?
<Options> [1]
<Option> [1..*]
<VendorSku> sku </VendorSku> [1] ?
<OptionSku> sku </OptionSku> [1] ?
<UPC> xs:string (length <= 15) </UPC> [0..1] ?
<Description> optionDescription </Description> [1] ?
<Cost> money </Cost> [1] ?
<Quantity> xs:integer </Quantity> [1] ?
<Weight> xs:decimal </Weight> [1] ?
</Option>
</Options>
<Manufacturer> manufacturer </Manufacturer> [1] ?
<Brand> xs:integer </Brand> [1] ?
<Warranty> warranty </Warranty> [0..1] ?
<Specifications> specifications </Specifications> [0..1] ?
<Images> [1]
<Thumbnail> xs:string </Thumbnail> [1] ?
<Main> xs:string </Main> [1] ?
<Large> xs:string </Large> [1] ?
</Images>
</Product>
</...>
Schema Component Representation
<xs:complexType name="getProductResponse">
<xs:sequence>
<xs:element name="Product">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductSku" type=" sku "/>
<xs:group ref=" commonProductGroup1 "/>
<xs:element name="Description" type=" description "/>
<xs:element name="Status" type=" productStatus "/>
<xs:group ref=" commonProductGroup2 "/>
<xs:element name="Pricing">
<xs:complexType>
<xs:complexContent>
<xs:extension base=" pricing ">
<xs:sequence>
<xs:element name="SuggestedSellingPrice" type=" money "/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:group ref=" commonProductGroup3 "/>
<xs:element name="Options">
<xs:complexType>
<xs:sequence>
<xs:element name="Option" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="VendorSku" type=" sku "/>
<xs:element name="OptionSku" type=" sku "/>
<xs:group ref=" option "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref=" commonProductGroup4 "/>
<xs:element name="Images">
<xs:complexType>
<xs:sequence>
<xs:element name="Thumbnail" type=" xs:string "/>
<xs:element name="Main" type=" xs:string "/>
<xs:element name="Large" type=" xs:string "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: getProduct2Request

Super-types: None
Sub-types: None
Name getProduct2Request
Abstract no
Documentation This request is used to obtain a products information based on a product SKU.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetProduct2>
    <ProductSku>12345</ProductSku>
    <ProductSku>67890</ProductSku>
  </GetProduct2>
</Request>
XML Instance Representation
<...>
<ProductSku> sku </ProductSku> [1..*] ?
</...>
Schema Component Representation
<xs:complexType name="getProduct2Request" requiresAuthentication="true">
<xs:sequence>
<xs:element name="ProductSku" type=" sku " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getProduct2Response

Super-types: None
Sub-types: None
Name getProduct2Response
Abstract no
Documentation This returns the product requested, providing additional information.

This response adds the following tags:
<ISBN>
<ReleaseDate>
<ProductDimensions>
<LTL>
<ShipAlone>

The following tags are no longer returned:
<Author>
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetProduct2Response>
    <Product>
      <ProductSku>123</ProductSku>
      <Name>Test Product Name</Name>
      <ShortName>Test Product</ShortName>
      <Summary>Test Summary</Summary>
      <Description>Test Description</Description>
      <Status>IN_CREATIVE</Status>
      <CategoryId>4</CategoryId>
      <ISBN>1234567890123</ISBN>
      <ReleaseDate>2011-03-25T15:56:03</ReleaseDate>
      <Pricing>
        <MSRP>23.45</MSRP>
        <MSRPSalesLocation>23.45</MSRPSalesLocation>
        <StreetPrice>44.67</StreetPrice>
        <NormalWholesalePrice>45.67</NormalWholesalePrice>
        <SuggestedSellingPrice>21.95</SuggestedSellingPrice>
      </Pricing>
      <ProductDimensions>5x5x5cm</ProductDimensions>
      <PackageDimensions>
        <Length>3.2</Length>
        <Width>3.4</Width>
        <Height>2.8</Height>
      </PackageDimensions>
      <LTL>TRUE</LTL>
      <ShipAlone>TRUE</ShipAlone>
      <SourceZipCode>23456</SourceZipCode>
      <CountryOfOrigin>USA</CountryOfOrigin>
      <Condition>NEW</Condition>
      <Options>
        <Option>
          <VendorSku>test234sku</VendorSku>
          <OptionSku>123-000-001</OptionSku>
          <Description>Desc</Description>
          <UPC>asdlfkjasdlfk</UPC>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3.6</Weight>
        </Option>
      </Options>
      <Manufacturer>
        <Name>ACME</Name>
        <PartNumber>31142</PartNumber>
        <ModelNumber>45222</ModelNumber>
      </Manufacturer>
      <Brand>0</Brand>
      <Warranty>
        <Provider>M</Provider>
        <Description>3 Year Warranty</Description>
        <ContactPhoneNumber>8015551234</ContactPhoneNumber>
      </Warranty>
      <Specifications>
        <Materials>Plastic</Materials>
      </Specifications>
      <Images>
        <Thumbnail>http://test</Thumbnail>
        <Main>http://test</Main>
        <Large>http://test</Large>
      </Images>
    </Product>
  </GetProduct2Response>
  <Success />
</Response>
XML Instance Representation
<...>
<Product> [1]
<ProductSku> sku </ProductSku> [1] ?
<Name> simpleString (length >= 3) </Name> [1] ?
<ShortName> xs:string (length <= 50) </ShortName> [1] ?
<Summary> xs:string (length <= 255) </Summary> [1] ?
<Description> description </Description> [1]
<Status> productStatus </Status> [1]
<CategoryId> xs:integer </CategoryId> [1] ?
<ISBN> xs:string (length <= 20) </ISBN> [0..1] ?
<ReleaseDate> xs:dateTime </ReleaseDate> [0..1] ?
<Pricing> [1]
<MSRP> money </MSRP> [1] ?
<MSRPSalesLocation> xs:string </MSRPSalesLocation> [0..1] ?
<StreetPrice> money </StreetPrice> [1] ?
<NormalWholesalePrice> money </NormalWholesalePrice> [0..1] ?
<SuggestedSellingPrice> money </SuggestedSellingPrice> [1] ?
</Pricing>
<ProductDimensions> xs:string (length <= 150) </ProductDimensions> [0..1] ?
<PackageDimensions> dimensions </PackageDimensions> [1] ?
<LTL> xs:boolean </LTL> [0..1] ?
<ShipAlone> xs:boolean </ShipAlone> [0..1] ?
<SourceZipCode> zipCode </SourceZipCode> [1] ?
<CountryOfOrigin> isoCountryCode </CountryOfOrigin> [1] ?
<Condition> productCondition </Condition> [1] ?
<Options> [1]
<Option> [1..*]
<VendorSku> sku </VendorSku> [1] ?
<OptionSku> sku </OptionSku> [1] ?
<UPC> xs:string (length <= 15) </UPC> [0..1] ?
<Description> optionDescription </Description> [1] ?
<Cost> money </Cost> [1] ?
<Quantity> xs:integer </Quantity> [1] ?
<Weight> xs:decimal </Weight> [1] ?
</Option>
</Options>
<Manufacturer> manufacturer </Manufacturer> [1] ?
<Brand> xs:integer </Brand> [1] ?
<Warranty> warranty </Warranty> [0..1] ?
<Specifications> specifications </Specifications> [0..1] ?
<Images> [1]
<Thumbnail> xs:string </Thumbnail> [1] ?
<Main> xs:string </Main> [1] ?
<Large> xs:string </Large> [1] ?
</Images>
</Product>
</...>
Schema Component Representation
<xs:complexType name="getProduct2Response">
<xs:sequence>
<xs:element name="Product">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductSku" type=" sku "/>
<xs:group ref=" commonProductGroup1 "/>
<xs:element name="Description" type=" description "/>
<xs:element name="Status" type=" productStatus "/>
<xs:group ref=" commonProductGroup2 "/>
<xs:element name="Pricing">
<xs:complexType>
<xs:complexContent>
<xs:extension base=" pricing ">
<xs:sequence>
<xs:element name="SuggestedSellingPrice" type=" money "/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:group ref=" commonProductGroup3 "/>
<xs:element name="Options">
<xs:complexType>
<xs:sequence>
<xs:element name="Option" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="VendorSku" type=" sku "/>
<xs:element name="OptionSku" type=" sku "/>
<xs:group ref=" option "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref=" commonProductGroup4 "/>
<xs:element name="Images">
<xs:complexType>
<xs:sequence>
<xs:element name="Thumbnail" type=" xs:string "/>
<xs:element name="Main" type=" xs:string "/>
<xs:element name="Large" type=" xs:string "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: addOptionRequest

Super-types: None
Sub-types: None
Name addOptionRequest
Abstract no
Documentation This request is to add a new option to an existing product.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <AddOption>
    <Product>
      <ProductSku>123</ProductSku>
      <Options>
        <Option>
          <VendorSku>test234sku</VendorSku>
          <UPC>sdflja3242</UPC>
          <Description>Desc</Description>
          <Cost>12.34</Cost>
          <Quantity>2</Quantity>
          <Weight>3</Weight>
        </Option>
      </Options>
    </Product>
  </AddOption>
</Request>
XML Instance Representation
<...>
<Product> [1..*]
<ProductSku> sku </ProductSku> [1] ?
<Options> options </Options> [1]
</Product>
</...>
Schema Component Representation
<xs:complexType name="addOptionRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="Product" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductSku" type=" sku "/>
<xs:element name="Options" type=" options "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: updateQuantityRequest

Super-types: None
Sub-types: None
Name updateQuantityRequest
Abstract no
Documentation This request is used to update the quantity of a particular option of product.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <UpdateQuantity>
    <Option>
      <OptionSku>12345</OptionSku>
      <Quantity>20</Quantity>
    </Option>
  </UpdateQuantity>
</Request>
XML Instance Representation
<...>
<Option> [1..*]
<OptionSku> sku </OptionSku> [1] ?
<Quantity> xs:integer </Quantity> [1]
</Option>
</...>
Schema Component Representation
<xs:complexType name="updateQuantityRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="Option" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="OptionSku" type=" sku "/>
<xs:element name="Quantity" type=" xs:integer "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: updateProductRequest

Super-types: None
Sub-types: None
Name updateProductRequest
Abstract no
Documentation This request is used to update a product.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <UpdateProduct>
    <Product>
      <ProductSku>123</ProductSku>
      <MSRP>29.95</MSRP>
      <Options>
        <Option>
          <OptionSku>123-000-001</OptionSku>
          <Cost>19.95</Cost>
          <Quantity>35</Quantity>
          <Sourceable>Y</Sourceable>
        </Option>
        <Option>
          <OptionSku>123-000-002</OptionSku>
          <Cost>24.95</Cost>
          <Quantity>18</Quantity>
          <Sourceable>N</Sourceable>
        </Option>
      </Options>
    </Product>
  </UpdateProduct>
</Request>
XML Instance Representation
<...>
<Product> [1..*]
<ProductSku> sku </ProductSku> [1] ?
<MSRP> money </MSRP> [0..1] ?
<Options> [0..1]
<Option> [1..*]
<OptionSku> sku </OptionSku> [1] ?
<Cost> money </Cost> [0..1] ?
<Quantity> xs:integer </Quantity> [0..1]
<Sourceable> xs:string (length <= 1) </Sourceable> [0..1] ?
</Option>
</Options>
</Product>
</...>
Schema Component Representation
<xs:complexType name="updateProductRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="Product" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductSku" type=" sku "/>
<xs:element name="MSRP" type=" money " minOccurs="0"/>
<xs:element name="Options" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Option" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="OptionSku" type=" sku "/>
<xs:element name="Cost" type=" money " minOccurs="0"/>
<xs:element name="Quantity" type=" xs:integer " minOccurs="0"/>
<xs:element name="Sourceable" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: getReturnsRequest

Super-types: None
Sub-types: None
Name getReturnsRequest
Abstract no
Documentation This request is used to return a list of outstanding returns to a vendor. This request should be made in regular intervals throughout the day to ensure that any returns can be processed in a timely manner.

Sample:
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetReturns />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getReturnsRequest" requiresAuthentication="true"/>
top

Complex Type: getReturnsResponse

Super-types: None
Sub-types: None
Name getReturnsResponse
Abstract no
Documentation This response returns a list of items that have been submitted for returns. GetReturn should be called every 2 hours.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetReturnsResponse>
    <Return>
      <Id>1</Id>
      <InvoiceLineId>2</InvoiceLineId>
      <Quantity>5</Quantity>
      <Date>2005-08-25T09:07:21</Date>
      <ReturnReason>
        <Code>ACCESSORY_MISSING</Code>
        <Notes>Didn't have screws</Notes>
      </ReturnReason>
      <Closure>
        <Action>CREDIT</Action>
        <Date>2005-08-25T09:07:21</Date>
        <TrackingNumber>53135138</TrackingNumber>
        <Type>CANCELED</Type>
      </Closure>
      <Rma>
        <Number>34831</Number>
        <Date>2005-08-25T09:07:21</Date>
        <ArsIssued>true</ArsIssued>
      </Rma>
    </Return>
    <Return canceled="true">
      <Id>3</Id>
    </Return>
  </GetReturnsResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<Return> return </Return> [1..*]
</...>
Schema Component Representation
<xs:complexType name="getReturnsResponse">
<xs:sequence>
<xs:element name="Return" type=" return " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getOrdersRequest

Super-types: None
Sub-types: None
Name getOrdersRequest
Abstract no
Documentation This request is used to return a list of outstanding orders to a vendor. Run GetOrders every 2-5 minutes.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetOrders />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getOrdersRequest" requiresAuthentication="true"/>
top

Complex Type: getOrdersResponse

Super-types: None
Sub-types: None
Name getOrdersResponse
Abstract no
Documentation This response returns a list of orders.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetOrdersResponse>
    <Order>
      <Id>1</Id>
      <Date>2005-08-24T09:07:21</Date>
      <Address>
        <Name>Test User</Name>
        <Address1>123 Test St.</Address1>
        <Address2></Address2>
        <City>Testcity</City>
        <State>UT</State>
        <ZipCode>12345</ZipCode>
      </Address>
      <Carrier>BEST</Carrier>
      <ShipMethod>GRND</ShipMethod>
      <InvoiceLine>
        <Id>3</Id>
        <Quantity>3</Quantity>
        <OptionSku>123-000-001</OptionSku>
        <Name>Test Product Name</Name>
        <ShipCost>3.45</ShipCost>
        <VendorSku>vendorsku123</VendorSku>
      </InvoiceLine>
      <InvoiceLine>
        <Id>5<Id>
        <Quantity>8</Quantity>
        <OptionSku>123-000-003</OptionSku>
        <Name>Test Name</Name>
        <ShipCost>4.95</ShipCost>
        <VendorSku>vendorsku456</VendorSku>
      </InvoiceLine>
    </Order>
    <Order>
      <InvoiceLine canceled="true">
        <Id>485<Id>
      </InvoiceLine>
    </Order>
  </GetOrdersResponse>
  <Success />
</Response>
XML Instance Representation
<...>
<Order> order </Order> [1..*]
</...>
Schema Component Representation
<xs:complexType name="getOrdersResponse">
<xs:sequence>
<xs:element name="Order" type=" order " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getOrders2Request

Super-types: None
Sub-types: None
Name getOrders2Request
Abstract no
Documentation This request is used to return a list of outstanding orders to a vendor. Run GetOrders every 2-5 minutes.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetOrders2 />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getOrders2Request" requiresAuthentication="true"/>
top

Complex Type: getOrders3Request

Super-types: None
Sub-types: None
Name getOrders3Request
Abstract no
Documentation This request is used to return a list of outstanding orders to a coastal vendor. Run GetOrders3 every 2-5 minutes.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <GetOrders3 />
</Request>
XML Instance Representation
<.../>
Schema Component Representation
<xs:complexType name="getOrders3Request" requiresAuthentication="true"/>
top

Complex Type: getOrders2Response

Super-types: None
Sub-types: None
Name getOrders2Response
Abstract no
Documentation This response returns a list of orders. This enhanced response will return costs for each invoice line within orders, as well as country codes within the shipping address. Gift messages will also be included if given. Furthermore, phone numbers will be returned only if properly supported and the order is LTL.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetOrders2Response>
    <Order>
      <Id>1</Id>
      <Date>2005-08-24T09:07:21</Date>
      <Address>
        <Name>Test User</Name>
        <Address1>123 Test St.</Address1>
        <Address2></Address2>
        <City>Testcity</City>
        <State>UT</State>
        <ZipCode>12345</ZipCode>
        <CountryCode>US</CountryCode>
        <Phone>5555555555</Phone>
      </Address>
      <Carrier>BEST</Carrier>
      <ShipMethod>LTL</ShipMethod>
      <InvoiceLine>
        <Id>3</Id>
        <Quantity>3</Quantity>
        <OptionSku>123-000-001</OptionSku>
        <Name>Test Product Name</Name>
        <ShipCost>3.45</ShipCost>
        <VendorSku>vendorsku123</VendorSku>
        <Cost>55.00</Cost>
        <GiftMessage>Not for me</GiftMessage>
      </InvoiceLine>
      <InvoiceLine>
        <Id>5<Id>
        <Quantity>8</Quantity>
        <OptionSku>123-000-003</OptionSku>
        <Name>Test Name</Name>
        <ShipCost>4.95</ShipCost>
        <VendorSku>vendorsku456</VendorSku>
        <Cost>65.00</Cost>
        <GiftMessage>For someone else...</GiftMessage>
      </InvoiceLine>
    </Order>
    <Order>
      <InvoiceLine canceled="true">
        <Id>485<Id>
      </InvoiceLine>
    </Order>
  </GetOrders2Response>
  <Success />
</Response>
XML Instance Representation
<...>
<Order> order </Order> [1..*]
</...>
Schema Component Representation
<xs:complexType name="getOrders2Response">
<xs:sequence>
<xs:element name="Order" type=" order " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: getOrders3Response

Super-types: None
Sub-types: None
Name getOrders3Response
Abstract no
Documentation This response returns a list of orders. This enhanced response will return costs, Group details which includes Id and ItemConfigId for each invoice line within orders, as well as country codes within the shipping address. First name, Last name, customer Email address, and Gift messages will also be included if present. Furthermore, phone numbers will be returned only if properly supported and the order is LTL.
Sample: 2 same frames and 2 different lenses
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <GetOrders3Response>
    <Order>
      <Id>1</Id>
      <Date>2005-08-24T09:07:21</Date>
      <Address>
        <FirstName>Test</FirstName>
        <LastName>User</LastName>
        <Address1>123 Test St.</Address1>
        <Address2></Address2>
        <City>Testcity</City>
        <State>UT</State>
        <ZipCode>12345</ZipCode>
        <CountryCode>US</CountryCode>
        <Phone>5555555555</Phone>
        <Email>somebody@somewhere.com</Email>
      </Address>
      <Carrier>BEST</Carrier>
      <ShipMethod>LTL</ShipMethod>
      <InvoiceLine>
        	<Id>101</Id>
        	<Quantity>2</Quantity>
	        <OptionSku>123-000-001</OptionSku>
	        <Name>Cateye Frame</Name>
	        <ShipCost>3.45</ShipCost>
	        <VendorSku>vendorsku123</VendorSku>
	        <Cost>55.00</Cost>
	        <GiftMessage>Not for me</GiftMessage>
	        <Group>
        		<Id>556</Id>
         		<ItemConfigId>12345</ItemConfigId>
         	</Group>
        	<Group>
         		<Id>557</Id>
         		<ItemConfigId>12346</ItemConfigId>
         	</Group>
      </InvoiceLine>
      <InvoiceLine>
        <Id>102<Id>
        <Quantity>1</Quantity>
        <OptionSku>123-000-003</OptionSku>
        <Name>Lens</Name>
        <ShipCost>3.45</ShipCost>
        <VendorSku>vendorsku456</VendorSku>
        <Cost>65.00</Cost>
        <GiftMessage>For someone else...</GiftMessage>
        <Group>
        		<Id>556</Id>
         		<ItemConfigId>12345</ItemConfigId>
        </Group>
      </InvoiceLine>
      <InvoiceLine>
        <Id>103<Id>
        <Quantity>1</Quantity>
        <OptionSku>123-000-003</OptionSku>
        <Name>Sunglass Lens</Name>
        <ShipCost>4.95</ShipCost>
        <VendorSku>vendorsku456</VendorSku>
        <Cost>65.00</Cost>
        <GiftMessage>For someone else...</GiftMessage>
        <Group>
        		<Id>557</Id>
         		<ItemConfigId>12346</ItemConfigId>
        </Group>
      </InvoiceLine>
    </Order>
    <Order>
      <InvoiceLine canceled="true">
        <Id>485<Id>
      </InvoiceLine>
    </Order>
  </GetOrders3Response>
  <Success />
</Response>
XML Instance Representation
<...>
<Order> order </Order> [1..*]
</...>
Schema Component Representation
<xs:complexType name="getOrders3Response">
<xs:sequence>
<xs:element name="Order" type=" order " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: processingOrdersRequest

Super-types: None
Sub-types: None
Name processingOrdersRequest
Abstract no
Documentation This request is used by a vendor to return a list of Invoice Line ID's from Orders they are processing. The objective of this call is to ensure that a vendor has recieved all of their outstanding orders. For instance a vendor could perform a GetOrders call and an invoice could get lost in the works. When they perform a ProcessingOrders call they obviously won't mark that lost invoice processing. Overstock will then know to return the order containing that lost invoice again the next time the vendor makes a GetOrders call. The acknowledgment attribute may be used to indicate that the invoice has been rejected or accepted. This value defaults to "accepted".
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <ProcessingOrders>
    <InvoiceLineId>1</InvoiceLineId>
    <InvoiceLineId acknowledgement="accepted">2</InvoiceLineId>
    <InvoiceLineId acknowledgement="rejected">3</InvoiceLineId>
    <InvoiceLineId>4</InvoiceLineId>
    <InvoiceLineId>5</InvoiceLineId>
  </ProcessingOrders>
</Request>
XML Instance Representation
<...>
<InvoiceLineId
acknowledgement=" xs:string (value comes from list: {'accepted'|'rejected'}) [0..1]"> [1..*]
xs:string
</InvoiceLineId>
</...>
Schema Component Representation
<xs:complexType name="processingOrdersRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="InvoiceLineId" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base=" xs:string ">
<xs:attribute name="acknowledgement" default="accepted">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="accepted"/>
<xs:enumeration value="rejected"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: processingReturnsRequest

Super-types: None
Sub-types: None
Name processingReturnsRequest
Abstract no
Documentation This request is used for a vendor to submit a list of returns that they are processing.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <ProcessingReturns>
    <ReturnId>1</ReturnId>
    <ReturnId>2</ReturnId>
    <ReturnId>3</ReturnId>
    <ReturnId>4</ReturnId>
    <ReturnId>5</ReturnId>
  </ProcessingReturns>
</Request>
XML Instance Representation
<...>
<ReturnId> xs:string </ReturnId> [1..*]
</...>
Schema Component Representation
<xs:complexType name="processingReturnsRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="ReturnId" type=" xs:string " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: submitReturnRmaRequest

Super-types: None
Sub-types: None
Name submitReturnRmaRequest
Abstract no
Documentation This request is used by the vendor to return RMA information for a return they are processing. If SubmitReturnRma is not called within a full business day, Overstock.com will autogenerate an RMA label for the customer.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <SubmitReturnRma>
    <Return>
      <Id>1</Id>
      <Rma>
        <Number>34831</Number>
        <Date>2005-08-25T15:56:03</Date>
        <ArsIssued>true</ArsIssued>
      </Rma>
    </Return>
    <Return>
      <Id>3</Id>
      <Rma>
        <Number>68168</Number>
        <Date>2005-08-25T15:56:03</Date>
        <ArsIssued>false</ArsIssued>
      </Rma>
    </Return>
  </SubmitReturnRma>
</Request>
XML Instance Representation
<...>
<Return> [1..*]
<Id> xs:string </Id> [1] ?
<Rma> rma </Rma> [1] ?
</Return>
</...>
Schema Component Representation
<xs:complexType name="submitReturnRmaRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="Return" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type=" xs:string "/>
<xs:element name="Rma" type=" rma "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: submitReturnClosureRequest

Super-types: None
Sub-types: None
Name submitReturnClosureRequest
Abstract no
Documentation This request is used by the vendor to return closure information for a return they have processed.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <SubmitReturnClosure>
    <Return>
      <Id>1</Id>
      <Closure>
        <Action>CREDIT</Action>
        <Date>2005-08-25T15:56:03</Date>
        <DesiredResolution>CREDIT</DesiredResolution>
        <TrackingNumber>53135138</TrackingNumber>
        <Type>CANCELED</Type>
      </Closure>
    </Return>
    <Return>
      <Id>3</Id>
      <Closure>
        <Action>CREDIT</Action>
        <Date>2005-08-25T15:56:03</Date>
        <DesiredResolution>CREDIT</DesiredResolution>
        <TrackingNumber>53135138</TrackingNumber>
        <Type>CANCELED</Type>
      </Closure>
    </Return>
  </SubmitReturnClosure>
</Request>
XML Instance Representation
<...>
<Return> [1..*]
<Id> xs:string </Id> [1] ?
<Closure> closure </Closure> [1] ?
</Return>
</...>
Schema Component Representation
<xs:complexType name="submitReturnClosureRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="Return" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type=" xs:string "/>
<xs:element name="Closure" type=" closure "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: confirmShipmentRequest

Super-types: None
Sub-types: None
Name confirmShipmentRequest
Abstract no
Documentation This request is used by a vendor to confirm a list of invoice lines that have been shipped.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <ConfirmShipment>
    <InvoiceLine>
      <Id>2</Id>
      <Quantity>3</Quantity>
      <Shipment>
        <CarrierCode>USPS</CarrierCode>
        <ShipDate>2005-08-25</ShipDate>
        <TrackingNumber>123456789</TrackingNumber>
        <PartnerInvoiceNumber>546458</PartnerInvoiceNumber>
      </Shipment>
    </InvoiceLine>
  </ConfirmShipment>
</Request>
XML Instance Representation
<...>
<InvoiceLine> shippedInvoiceLine </InvoiceLine> [1..*]
</...>
Schema Component Representation
<xs:complexType name="confirmShipmentRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="InvoiceLine" type=" shippedInvoiceLine " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: shortshipLineRequest

Super-types: None
Sub-types: None
Name shortshipLineRequest
Abstract no
Documentation This request is used by a vendor to shortship a list of entire invoice lines. Partial shortships of an invoice line are not allowed.
Sample:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <AuthenticationKey>4E9E8137-DAE8-4728-9CCF-036F932847D7</AuthenticationKey>
  <ShortshipLine>
    <InvoiceLineId>2</InvoiceLineId>
    <InvoiceLineId>4</InvoiceLineId>
  </ShortshipLine>
</Request>
XML Instance Representation
<...>
<InvoiceLineId> xs:string </InvoiceLineId> [1..*]
</...>
Schema Component Representation
<xs:complexType name="shortshipLineRequest" requiresAuthentication="true">
<xs:sequence>
<xs:element name="InvoiceLineId" type=" xs:string " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: address

Super-types: None
Sub-types: None
Name address
Abstract no
Documentation This type defines an address, and consists of the elements that define the different parts of an address: name, street address, city, state, and zip code.
XML Instance Representation
<...>
<Name> xs:string (length <= 150) </Name> [0..1]
<FirstName> xs:string (length <= 150) </FirstName> [0..1]
<LastName> xs:string (length <= 150) </LastName> [0..1]
<Address1> addressLine </Address1> [1]
<Address2> addressLine </Address2> [1]
<City> xs:string (length <= 60) </City> [1]
<State> xs:string (length <= 60) </State> [1]
<ZipCode> zipCode </ZipCode> [1]
<CountryCode> isoCountryCode </CountryCode> [0..1]
<Phone> xs:string </Phone> [0..1]
<Email> xs:string </Email> [0..1]
</...>
Schema Component Representation
<xs:complexType name="address" classification="Addresses">
<xs:sequence>
<xs:element name="Name" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="150"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FirstName" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="150"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LastName" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="150"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Address1" type=" addressLine "/>
<xs:element name="Address2" type=" addressLine "/>
<xs:element name="City">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="State">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ZipCode" type=" zipCode "/>
<xs:element name="CountryCode" type=" isoCountryCode " maxOccurs="1" minOccurs="0"/>
<xs:element name="Phone" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Email" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: approvalStatus

Super-types: None
Sub-types: None
Name approvalStatus
Abstract no
Documentation This type refers to whether an item has been manually approved by Overstock.com to be sold through the shopping site. It is made up of the elements "approved," "denied," or "pending."
XML Instance Representation
<...>
Start Choice [1..*]
<OnSite> statusDetails </OnSite> [0..1] ?
<Approved> statusDetails </Approved> [0..1] ?
<InCreative> statusDetails </InCreative> [0..1] ?
<Pending> statusDetails </Pending> [0..1] ?
<Discontinued> statusDetails </Discontinued> [0..1] ?
<Problem> statusDetails </Problem> [0..1] ?
End Choice
</...>
Schema Component Representation
<xs:complexType name="approvalStatus" classification="Product">
<xs:choice maxOccurs="unbounded">
<xs:element name="OnSite" type=" statusDetails " minOccurs="0"/>
<xs:element name="Approved" type=" statusDetails " minOccurs="0"/>
<xs:element name="InCreative" type=" statusDetails " minOccurs="0"/>
<xs:element name="Pending" type=" statusDetails " minOccurs="0"/>
<xs:element name="Discontinued" type=" statusDetails " minOccurs="0"/>
<xs:element name="Problem" type=" statusDetails " minOccurs="0"/>
</xs:choice>
</xs:complexType>
top

Complex Type: category

Super-types: None
Sub-types: None
Name category
Abstract no
Documentation This type defines a category. Overstock.com's taxonomy is comprised of stores, departments, categories and subcategories but all of these can be defined as having a name, an ID and potential children.
XML Instance Representation
<...>
<Id> xs:integer </Id> [1] ?
<Name> xs:string (length <= 50) </Name> [1] ?
<Category> category </Category> [0..*]
</...>
Schema Component Representation
<xs:complexType name="category" classification="Product">
<xs:sequence>
<xs:element name="Id" type=" xs:integer "/>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Category" type=" category " minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: closure

Super-types: None
Sub-types: None
Name closure
Abstract no
Documentation This type describes what has taken place to take care of a customer return such as whether they were credited, when it happened, the tracking number, and what type of return it was.
XML Instance Representation
<...>
<Action> returnAction </Action> [1] ?
<Date> xs:dateTime </Date> [1] ?
<DesiredResolution> returnAction </DesiredResolution> [0..1] ?
<TrackingNumber> xs:string </TrackingNumber> [0..1] ?
<Type> returnType </Type> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="closure" classification="Ordering">
<xs:sequence>
<xs:element name="Action" type=" returnAction "/>
<xs:element name="Date" type=" xs:dateTime "/>
<xs:element name="DesiredResolution" type=" returnAction " minOccurs="0"/>
<xs:element name="TrackingNumber" type=" xs:string " minOccurs="0"/>
<xs:element name="Type" type=" returnType " minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: dimensions

Super-types: None
Sub-types: None
Name dimensions
Abstract no
Documentation This type defines the size of a package or product. It is made up of the elements that define the unit's length, width, and height.
XML Instance Representation
<...>
<Length> xs:integer </Length> [1] ?
<Width> xs:integer </Width> [1] ?
<Height> xs:integer </Height> [1] ?
</...>
Schema Component Representation
<xs:complexType name="dimensions">
<xs:sequence>
<xs:element name="Length" type=" xs:integer "/>
<xs:element name="Width" type=" xs:integer "/>
<xs:element name="Height" type=" xs:integer "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: error

Super-types: None
Sub-types:
Name error
Abstract no
Documentation This element is made up of the errorTypes that are returned if there were any errors while processing a request.
XML Instance Representation
<...>
<Message> xs:string </Message> [1]
<Type> errorType </Type> [1]
</...>
Schema Component Representation
<xs:complexType name="error">
<xs:sequence>
<xs:element name="Message" type=" xs:string "/>
<xs:element name="Type" type=" errorType "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: failure

Super-types: None
Sub-types: None
Name failure
Abstract no
Documentation This type is used to define a failed operation after a request is made. It is comprised of the error element, which in turn is made up of various error types.
Sample of a failed call:

Request:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request xmlns="http://www.overstock.com/shoppingApi">
  <MerchantKey>BADKEY-DAE8-4728-9CCF-036F932847D7</MerchantKey>
  <GetOverstockTime />
</Request>

Response:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Response xmlns="http://www.overstock.com/shoppingApi">
  <Failure>
    <Error>
      <Message>
Invalid Request (Error):
   Line number: 3
   Column number: 64

   Problem: cvc-pattern-valid: Value 'BADKEY-DAE8-4728-9CCF-036F932847D7' is not facet-valid with respect to pattern '[A-Z0-9]{8}\-[A-Z0-9]{4}\-[A-Z0-9]{4}\-[A-Z0-9]{4}\-[A-Z0-9]{12}' for type 'uuid'.
      </Message>
      <Type>INVALID_REQUEST</Type>
    </Error>
  </Failure>
</Response>
XML Instance Representation
<...>
<Error> error </Error> [0..*]
</...>
Schema Component Representation
<xs:complexType name="failure">
<xs:sequence>
<xs:element name="Error" type=" error " minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: idSpecifiedError

Super-types: error < idSpecifiedError (by extension)
Sub-types: None
Name idSpecifiedError
Abstract no
XML Instance Representation
<...
id=" xs:string [1]">
<Message> xs:string </Message> [1]
<Type> errorType </Type> [1]
</...>
Schema Component Representation
<xs:complexType name="idSpecifiedError">
<xs:complexContent>
<xs:extension base=" error ">
<xs:attribute name="id" type=" xs:string " use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
top

Complex Type: imageGroup

Super-types: None
Sub-types: None
Name imageGroup
Abstract no
Documentation This element contains the three required images: a thumbnail, a main product image and a large image, or the main image and two optional mouseover images.
XML Instance Representation
<...>
Start Choice [1]
<Thumbnail> image </Thumbnail> [0..1]
<Main> image </Main> [0..1]
<Large> image </Large> [0..1]
<MainImage> image </MainImage> [0..1]
<Mouseover_Big1> image </Mouseover_Big1> [0..1]
<Mouseover_Big2> image </Mouseover_Big2> [0..1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="imageGroup">
<xs:choice>
<xs:sequence>
<xs:element name="Thumbnail" type=" image " maxOccurs="1" minOccurs="0"/>
<xs:element name="Main" type=" image " maxOccurs="1" minOccurs="0"/>
<xs:element name="Large" type=" image " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
<xs:sequence>
<xs:element name="MainImage" type=" image " maxOccurs="1" minOccurs="0"/>
<xs:element name="Mouseover_Big1" type=" image " maxOccurs="1" minOccurs="0"/>
<xs:element name="Mouseover_Big2" type=" image " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
top

Complex Type: imageURLGroup

Super-types: None
Sub-types: None
Name imageURLGroup
Abstract no
Documentation This element contains the three required images urls: a thumbnail url, a main product image url and a large image url, or the main image URL and two optional mouseover image urls.
XML Instance Representation
<...>
Start Choice [1]
<Thumbnail> url </Thumbnail> [0..1]
<Main> url </Main> [0..1]
<Large> url </Large> [0..1]
<MainImage> url </MainImage> [0..1]
<Mouseover_Big1> url </Mouseover_Big1> [0..1]
<Mouseover_Big2> url </Mouseover_Big2> [0..1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="imageURLGroup">
<xs:choice>
<xs:sequence>
<xs:element name="Thumbnail" type=" url " maxOccurs="1" minOccurs="0"/>
<xs:element name="Main" type=" url " maxOccurs="1" minOccurs="0"/>
<xs:element name="Large" type=" url " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
<xs:sequence>
<xs:element name="MainImage" type=" url " maxOccurs="1" minOccurs="0"/>
<xs:element name="Mouseover_Big1" type=" url " maxOccurs="1" minOccurs="0"/>
<xs:element name="Mouseover_Big2" type=" url " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
top

Complex Type: inventory

Super-types: None
Sub-types: None
Name inventory
Abstract no
Documentation This type is used to the inventory details for a particular product, and consists of the elements that define a product's price, estimated cost, active status, in-stock status, estimated total in the inventory, the zip code of the product's source, the state of the product's source, and the shipping and channel information for the product.
XML Instance Representation
<...>
<Cost> money </Cost> [1] ?
<Inventory> xs:integer </Inventory> [1] ?
<Weight> xs:decimal </Weight> [1] ?
</...>
Schema Component Representation
<xs:complexType name="inventory" classification="Inventory">
<xs:sequence>
<xs:element name="Cost" type=" money "/>
<xs:element name="Inventory" type=" xs:integer "/>
<xs:element name="Weight" type=" xs:decimal "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: invoiceLine

Super-types: None
Sub-types: None
Name invoiceLine
Abstract no
Documentation This type defines the elements that make up an invoice line, which are the product ID number, the item's cost, the quantity, and the SKU.
XML Instance Representation
<...
canceled=" xs:boolean [0..1] ?">
<Id> xs:string </Id> [1] ?
<Quantity> xs:integer </Quantity> [0..1]
<OptionSku> sku </OptionSku> [0..1] ?
<Name> xs:string </Name> [0..1]
<ShipCost> money </ShipCost> [0..1]
<VendorSku> sku </VendorSku> [0..1]
<Cost> money </Cost> [0..1]
<GiftMessage> xs:string </GiftMessage> [0..1]
<Group> group </Group> [1..*] ?
</...>
Schema Component Representation
<xs:complexType name="invoiceLine" classification="Ordering">
<xs:sequence>
<xs:element name="Id" type=" xs:string "/>
<xs:element name="Quantity" type=" xs:integer " minOccurs="0"/>
<xs:element name="OptionSku" type=" sku " minOccurs="0"/>
<xs:element name="Name" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ShipCost" type=" money " maxOccurs="1" minOccurs="0"/>
<xs:element name="VendorSku" type=" sku " maxOccurs="1" minOccurs="0"/>
<xs:element name="Cost" type=" money " maxOccurs="1" minOccurs="0"/>
<xs:element name="GiftMessage" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Group" type=" group " maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="canceled" type=" xs:boolean " default="false"/>
</xs:complexType>
top

Complex Type: group

Super-types: None
Sub-types: None
Name group
Abstract no
Documentation This type defines the elements that make up an group, which are the group ID number and the Item Config Id.
XML Instance Representation
<...>
<Id> xs:integer </Id> [1] ?
<ItemConfigId> xs:string (length <= 30) </ItemConfigId> [1] ?
</...>
Schema Component Representation
<xs:complexType name="group" classification="Ordering">
<xs:sequence>
<xs:element name="Id" type=" xs:integer "/>
<xs:element name="ItemConfigId">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: manufacturer

Super-types: None
Sub-types: None
Name manufacturer
Abstract no
Documentation This type is used to describe the details of a product's manufacturer, and consists of the elements that define a manufacturer's name, as well as the model and part numbers of the product.
XML Instance Representation
<...>
<Name> xs:string (length <= 50) </Name> [1] ?
<PartNumber> manufacturerPartNumber </PartNumber> [0..1] ?
<ModelNumber> manufacturerPartNumber </ModelNumber> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="manufacturer" classification="Product">
<xs:sequence>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PartNumber" type=" manufacturerPartNumber " minOccurs="0"/>
<xs:element name="ModelNumber" type=" manufacturerPartNumber " minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: option

Super-types: None
Sub-types: None
Name option
Abstract no
Documentation This type is for designating a product's options.
XML Instance Representation
<...>
<VendorSku> sku </VendorSku> [1] ?
<UPC> xs:string (length <= 15) </UPC> [0..1] ?
<Description> optionDescription </Description> [1] ?
<Cost> money </Cost> [1] ?
<Quantity> xs:integer </Quantity> [1] ?
<Weight> xs:decimal </Weight> [1] ?
</...>
Schema Component Representation
<xs:complexType name="option" classification="Product">
<xs:sequence>
<xs:element name="VendorSku" type=" sku "/>
<xs:element name="UPC" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Description" type=" optionDescription "/>
<xs:element name="Cost" type=" money "/>
<xs:element name="Quantity" type=" xs:integer "/>
<xs:element name="Weight" type=" xs:decimal "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: options

Super-types: None
Sub-types: None
Name options
Abstract no
Documentation There is no limit on the number of options that can be added.
XML Instance Representation
<...>
<Option> option </Option> [1..*]
</...>
Schema Component Representation
<xs:complexType name="options" classification="Product">
<xs:sequence>
<xs:element name="Option" type=" option " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: order

Super-types: None
Sub-types: None
Name order
Abstract no
Documentation This type defines the elements that make up an order, which are the product ID number, the date the item was ordered, the shipping address, and the invoice line.
XML Instance Representation
<...>
<Id> xs:string </Id> [0..1] ?
<Date> xs:dateTime </Date> [0..1] ?
<Address> address </Address> [0..1] ?
<Carrier> xs:string </Carrier> [0..1]
<ShipMethod> xs:string </ShipMethod> [0..1]
<InvoiceLine> invoiceLine </InvoiceLine> [1..*] ?
</...>
Schema Component Representation
<xs:complexType name="order" classification="Ordering">
<xs:sequence>
<xs:element name="Id" type=" xs:string " minOccurs="0"/>
<xs:element name="Date" type=" xs:dateTime " minOccurs="0"/>
<xs:element name="Address" type=" address " minOccurs="0"/>
<xs:element name="Carrier" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ShipMethod" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="InvoiceLine" type=" invoiceLine " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: partialFailure

Super-types: None
Sub-types: None
Name partialFailure
Abstract no
Documentation This type is used to describe failures with a call that was only partially successful. An example use case would be when multiple products are submitted with the SubmitNewProduct call. If 9 out of 10 product submissions succeeded, we don't want to force you to re-submit all 10. In this case we will return a PartialFailure element in place of the normal Success or Failure. The PartialFailure element will contain an Error element for each product that failed. The product SKU is specified in the id attribute on the Error element and the reason for the failure is specified in the normal Message and Type elements. Currently, any method that supports batching calls (e.g. SubmitNewProduct, UpdateQuantity, ProcessingOrders, etc.) may return a PartialFailure in place of either Success or Failure.
XML Instance Representation
<...>
<Error> idSpecifiedError </Error> [1..*]
</...>
Schema Component Representation
<xs:complexType name="partialFailure">
<xs:sequence>
<xs:element name="Error" type=" idSpecifiedError " minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: pricing

Super-types: None
Sub-types: None
Name pricing
Abstract no
Documentation This type is used to define the pricing of a product. It is made up of the elements that define the MSRP (manufacturer's suggested retail price), the MSRP sales location, the street price, the list.addProblem(new Element(type).addContent(saProduct .getOptionSku().getSku())); normal wholesale price, and the minimum price.
XML Instance Representation
<...>
<MSRP> money </MSRP> [1] ?
<MSRPSalesLocation> xs:string </MSRPSalesLocation> [0..1] ?
<StreetPrice> money </StreetPrice> [1] ?
<NormalWholesalePrice> money </NormalWholesalePrice> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="pricing" classification="Pricing">
<xs:sequence>
<xs:element name="MSRP" type=" money "/>
<xs:element name="MSRPSalesLocation" type=" xs:string " minOccurs="0"/>
<xs:element name="StreetPrice" type=" money "/>
<xs:element name="NormalWholesalePrice" type=" money " minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: product

Super-types: None
Sub-types: None
Name product
Abstract no
Documentation This type refers to a particular product, and consists of the elements that describe that product.
XML Instance Representation
<...>
<Name> simpleString (length >= 3) </Name> [1] ?
<ShortName> xs:string (length <= 50) </ShortName> [1] ?
<Summary> xs:string (length <= 255) </Summary> [1] ?
<Description> xs:string (length <= 2000) </Description> [1] ?
<CategoryId> xs:integer </CategoryId> [1] ?
<Pricing> pricing </Pricing> [1]
<PackageDimensions> dimensions </PackageDimensions> [1]
<SourceZipCode> zipCode </SourceZipCode> [1] ?
<CountryOfOrigin> isoCountryCode </CountryOfOrigin> [1] ?
<Condition> productCondition </Condition> [1]
<Options> options </Options> [1]
<Manufacturer> manufacturer </Manufacturer> [1]
<Brand> xs:integer </Brand> [1] ?
<Warranty> warranty </Warranty> [0..1]
<Specifications> specifications </Specifications> [0..1]
<Images> imageGroup </Images> [1]
</...>
Schema Component Representation
<xs:complexType name="product" classification="Product">
<xs:sequence>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base=" simpleString ">
<xs:minLength value="3"/>
<xs:maxLength value="128"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ShortName">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Summary">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Description">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CategoryId" type=" xs:integer "/>
<xs:element name="Pricing" type=" pricing "/>
<xs:element name="PackageDimensions" type=" dimensions "/>
<xs:element name="SourceZipCode" type=" zipCode "/>
<xs:element name="CountryOfOrigin" type=" isoCountryCode "/>
<xs:element name="Condition" type=" productCondition "/>
<xs:element name="Options" type=" options "/>
<xs:element name="Manufacturer" type=" manufacturer "/>
<xs:element name="Brand" type=" xs:integer "/>
<xs:element name="Warranty" type=" warranty " minOccurs="0"/>
<xs:element name="Specifications" type=" specifications " minOccurs="0"/>
<xs:element name="Images" type=" imageGroup "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: return

Super-types: None
Sub-types: None
Name return
Abstract no
Documentation This type consists of the elements Id, InvoiceLineId, Date, ReturnReason, Closure, and RMA.
XML Instance Representation
<...
canceled=" xs:boolean [0..1] ?">
<Id> xs:string </Id> [1] ?
<InvoiceLineId> xs:string </InvoiceLineId> [0..1] ?
<Quantity> xs:integer </Quantity> [0..1]
<Date> xs:dateTime </Date> [0..1] ?
<Destination> destination </Destination> [1] ?
<ReturnReason> returnReason </ReturnReason> [0..1] ?
<Closure> closure </Closure> [0..1] ?
<Rma> rma </Rma> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="return" classification="Ordering">
<xs:sequence>
<xs:element name="Id" type=" xs:string "/>
<xs:element name="InvoiceLineId" type=" xs:string " minOccurs="0"/>
<xs:element name="Quantity" type=" xs:integer " maxOccurs="1" minOccurs="0"/>
<xs:element name="Date" type=" xs:dateTime " minOccurs="0"/>
<xs:element name="Destination" type=" destination "/>
<xs:element name="ReturnReason" type=" returnReason " minOccurs="0"/>
<xs:element name="Closure" type=" closure " minOccurs="0"/>
<xs:element name="Rma" type=" rma " minOccurs="0"/>
</xs:sequence>
<xs:attribute name="canceled" type=" xs:boolean " default="false"/>
</xs:complexType>
top

Complex Type: returnReason

Super-types: None
Sub-types: None
Name returnReason
Abstract no
Documentation This type consists of the return reason's code and notes about the why the return was made.
XML Instance Representation
<...>
<Code> returnCode </Code> [1] ?
<Notes> xs:string </Notes> [1] ?
</...>
Schema Component Representation
<xs:complexType name="returnReason" classification="Ordering">
<xs:sequence>
<xs:element name="Code" type=" returnCode "/>
<xs:element name="Notes" type=" xs:string "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: rma

Super-types: None
Sub-types: None
Name rma
Abstract no
Documentation This type is to provide information relating to the Return Merchandise Authoriztion.
XML Instance Representation
<...>
<Number> xs:string </Number> [1] ?
<Date> xs:dateTime </Date> [1] ?
<ArsIssued> xs:boolean </ArsIssued> [1] ?
</...>
Schema Component Representation
<xs:complexType name="rma" classification="Ordering">
<xs:sequence>
<xs:element name="Number" type=" xs:string "/>
<xs:element name="Date" type=" xs:dateTime "/>
<xs:element name="ArsIssued" type=" xs:boolean "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: shipment

Super-types: None
Sub-types: None
Name shipment
Abstract no
Documentation This type defines the elements that make up an item's shipping information, which include the code for the company that is shipping the item, the date on which it was shipped, the tracking number, and the invoice.
XML Instance Representation
<...>
<CarrierCode> xs:string </CarrierCode> [1] ?
<ShipDate> xs:date </ShipDate> [1] ?
<TrackingNumber> xs:string (length >= 4) </TrackingNumber> [1] ?
<PartnerInvoiceNumber> xs:string (length <= 32) </PartnerInvoiceNumber> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="shipment" classification="Shipping">
<xs:sequence>
<xs:element name="CarrierCode" type=" xs:string "/>
<xs:element name="ShipDate" type=" xs:date "/>
<xs:element name="TrackingNumber">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:minLength value="4"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PartnerInvoiceNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="32"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: shippedInvoiceLine

Super-types: None
Sub-types: None
Name shippedInvoiceLine
Abstract no
Documentation This type defines the elements that make up an invoice line, for a shipped item, which are the order line ID number, the quantity shipped, and the shipment details.
XML Instance Representation
<...>
<Id> xs:string </Id> [1] ?
<Quantity> xs:integer </Quantity> [1]
<Shipment> shipment </Shipment> [1] ?
</...>
Schema Component Representation
<xs:complexType name="shippedInvoiceLine" classification="Shipping">
<xs:sequence>
<xs:element name="Id" type=" xs:string "/>
<xs:element name="Quantity" type=" xs:integer "/>
<xs:element name="Shipment" type=" shipment "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: specifications

Super-types: None
Sub-types: None
Name specifications
Abstract no
Documentation This type is for defining the different elements that can go in the specification field, which are "Materials" and "Author."
XML Instance Representation
<...>
<Materials> specificationField </Materials> [0..1] ?
<Author> specificationField </Author> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="specifications" classification="Product">
<xs:sequence>
<xs:element name="Materials" type=" specificationField " minOccurs="0"/>
<xs:element name="Author" type=" specificationField " minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: statusDetails

Super-types: None
Sub-types: None
Name statusDetails
Abstract no
Documentation This type refers to the approved status for an Overstock.com item. It contains the elements "ProductSku" and "product".
XML Instance Representation
<...>
Start Choice [1..*]
<ProductSku> sku </ProductSku> [0..1] ?
<VendorSku> sku </VendorSku> [0..1] ?
<Product> [0..1]
<ProductSku> sku </ProductSku> [0..1] ?
<Options> [1]
<Option> [1..*]
<VendorSku> sku </VendorSku> [1] ?
<OptionSku> sku </OptionSku> [0..1] ?
</Option>
</Options>
</Product>
End Choice
</...>
Schema Component Representation
<xs:complexType name="statusDetails" classification="Product">
<xs:choice maxOccurs="unbounded">
<xs:element name="ProductSku" type=" sku " minOccurs="0"/>
<xs:element name="VendorSku" type=" sku " minOccurs="0"/>
<xs:element name="Product" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ProductSku" type=" sku " minOccurs="0"/>
<xs:element name="Options">
<xs:complexType>
<xs:sequence>
<xs:element name="Option" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="VendorSku" type=" sku "/>
<xs:element name="OptionSku" type=" sku " minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
top

Complex Type: productStatusDetails

Super-types: None
Sub-types: None
Name productStatusDetails
Abstract no
Documentation This type refers to the product returned from a getProductStatus call that contains mappings from vendor sku to overstock ones. It contains the elements "ProductSku" and "options".
XML Instance Representation
<...>
<ProductSku> sku </ProductSku> [0..1] ?
<Status> xs:string </Status> [1]
<Options> [0..1]
<Option> [1..*]
<OptionSku> sku </OptionSku> [0..1] ?
<VendorSku> sku </VendorSku> [1] ?
</Option>
</Options>
</...>
Schema Component Representation
<xs:complexType name="productStatusDetails" classification="Product">
<xs:sequence>
<xs:element name="ProductSku" type=" sku " minOccurs="0"/>
<xs:element name="Status" type=" xs:string "/>
<xs:element name="Options" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Option" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="OptionSku" type=" sku " minOccurs="0"/>
<xs:element name="VendorSku" type=" sku "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: warranty

Super-types: None
Sub-types: None
Name warranty
Abstract no
Documentation This type is for defining details about a warranty. It consists of the elements that defining the warranty provider's name, description, and phone number. If no Provider is submitted, this value will default to "M".
XML Instance Representation
<...>
<Provider> warrantyProvider </Provider> [0..1]
<Description> warrantyDescription </Description> [0..1] ?
<ContactPhoneNumber> phoneNumber </ContactPhoneNumber> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="warranty" classification="Warranty">
<xs:sequence>
<xs:element name="Provider" type=" warrantyProvider " minOccurs="0"/>
<xs:element name="Description" type=" warrantyDescription " minOccurs="0"/>
<xs:element name="ContactPhoneNumber" type=" phoneNumber " minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Model Group: option

Name option
Documentation This type is for designating a product's options.
XML Instance Representation
<UPC> xs:string (length <= 15) </UPC> [0..1] ?
<Description> optionDescription </Description> [1] ?
<Cost> money </Cost> [1] ?
<Quantity> xs:integer </Quantity> [1] ?
<Weight> xs:decimal </Weight> [1] ?
Schema Component Representation
<xs:group name="option" classification="Product">
<xs:sequence>
<xs:element name="UPC" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Description" type=" optionDescription "/>
<xs:element name="Cost" type=" money "/>
<xs:element name="Quantity" type=" xs:integer "/>
<xs:element name="Weight" type=" xs:decimal "/>
</xs:sequence>
</xs:group>
top

Model Group: pricing

Name pricing
Documentation This type is used to define the pricing of a product. It is made up of the elements that define the MSRP (manufacturer's suggested retail price), the MSRP sales location, the street price, the normal wholesale price, and the suggested selling price.
XML Instance Representation
<MSRP> money </MSRP> [1] ?
<MSRPSalesLocation> xs:string </MSRPSalesLocation> [0..1] ?
<StreetPrice> money </StreetPrice> [1] ?
<NormalWholesalePrice> money </NormalWholesalePrice> [0..1] ?
Schema Component Representation
<xs:group name="pricing" classification="Pricing">
<xs:sequence>
<xs:element name="MSRP" type=" money "/>
<xs:element name="MSRPSalesLocation" type=" xs:string " minOccurs="0"/>
<xs:element name="StreetPrice" type=" money "/>
<xs:element name="NormalWholesalePrice" type=" money " minOccurs="0"/>
</xs:sequence>
</xs:group>
top

Model Group: commonProductGroup1

Name commonProductGroup1
Documentation This type refers to a particular product, and consists of the elements that describe that product.
XML Instance Representation
<Name> simpleString (length >= 3) </Name> [1] ?
<ShortName> xs:string (length <= 50) </ShortName> [1] ?
<Summary> xs:string (length <= 255) </Summary> [1] ?
Schema Component Representation
<xs:group name="commonProductGroup1" classification="Product">
<xs:sequence>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base=" simpleString ">
<xs:minLength value="3"/>
<xs:maxLength value="128"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ShortName">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Summary">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:group>
top

Model Group: commonProductGroup2

Name commonProductGroup2
XML Instance Representation
<CategoryId> xs:integer </CategoryId> [1] ?
<ISBN> xs:string (length <= 20) </ISBN> [0..1] ?
<ReleaseDate> xs:dateTime </ReleaseDate> [0..1] ?
Schema Component Representation
<xs:group name="commonProductGroup2" classification="Product">
<xs:sequence>
<xs:element name="CategoryId" type=" xs:integer "/>
<xs:element name="ISBN" minOccurs="0" maxOccurs="1">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ReleaseDate" type=" xs:dateTime " minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:group>
top

Model Group: commonProductGroup3

Name commonProductGroup3
XML Instance Representation
<ProductDimensions> xs:string (length <= 150) </ProductDimensions> [0..1] ?
<PackageDimensions> dimensions </PackageDimensions> [1] ?
<LTL> xs:boolean </LTL> [0..1] ?
<ShipAlone> xs:boolean </ShipAlone> [0..1] ?
<SourceZipCode> zipCode </SourceZipCode> [1] ?
<CountryOfOrigin> isoCountryCode </CountryOfOrigin> [1] ?
<Condition> productCondition </Condition> [1] ?
Schema Component Representation
<xs:group name="commonProductGroup3" classification="Product">
<xs:sequence>
<xs:element name="ProductDimensions" minOccurs="0" maxOccurs="1">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="150"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PackageDimensions" type=" dimensions "/>
<xs:element name="LTL" type=" xs:boolean " minOccurs="0"/>
<xs:element name="ShipAlone" type=" xs:boolean " minOccurs="0"/>
<xs:element name="SourceZipCode" type=" zipCode "/>
<xs:element name="CountryOfOrigin" type=" isoCountryCode "/>
<xs:element name="Condition" type=" productCondition "/>
</xs:sequence>
</xs:group>
top

Model Group: commonProductGroup4

Name commonProductGroup4
XML Instance Representation
<Manufacturer> manufacturer </Manufacturer> [1] ?
<Brand> xs:integer </Brand> [1] ?
<Warranty> warranty </Warranty> [0..1] ?
<Specifications> specifications </Specifications> [0..1] ?
Schema Component Representation
<xs:group name="commonProductGroup4" classification="Product">
<xs:sequence>
<xs:element name="Manufacturer" type=" manufacturer "/>
<xs:element name="Brand" type=" xs:integer "/>
<xs:element name="Warranty" type=" warranty " minOccurs="0"/>
<xs:element name="Specifications" type=" specifications " minOccurs="0"/>
</xs:sequence>
</xs:group>
top

Simple Type: addressLine

Super-types: xs:string < addressLine (by restriction)
Sub-types: None
Name addressLine
Content
  • Base XSD Type: string
  • length <= 240
Documentation This type defines the restrictions for an address line.
Schema Component Representation
<xs:simpleType name="addressLine" classification="Addresses">
<xs:restriction base=" xs:string ">
<xs:maxLength value="240"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: description

Super-types: xs:string < description (by restriction)
Sub-types: None
Name description
Content
  • Base XSD Type: string
  • length >= 1
Documentation Contains the full description for the product. Rich formatting can be obtained by including HTML markup such as <BR>, <UL>, and <LI>. See the HTML section of the Product Submission Guidelines for a more complete description of formatting, and see the Copy Guidelines section for a description of what information should be included for each category. Description cannot be more than 2000 characters long (including all the HTML tags). The partner cannot edit this field once it has been entered.
Schema Component Representation
<xs:simpleType name="description" classification="Product">
<xs:restriction base=" xs:string ">
<xs:minLength value="1"/>
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: destination

Super-types: xs:string < destination (by restriction)
Sub-types: None
Name destination
Content
  • Base XSD Type: string
  • value comes from list: {'CLIENT'|'SUPPLIER'}
Documentation This type is an enumeration to describe where a return will be sent to by the customer. The CLIENT is Overstock, and SUPPLIER means the partner that originally shipped the order.
Schema Component Representation
<xs:simpleType name="destination">
<xs:restriction base=" xs:string ">
<xs:enumeration value="CLIENT"/>
<xs:enumeration value="SUPPLIER"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: errorType

Super-types: xs:string < errorType (by restriction)
Sub-types: None
Name errorType
Content
  • Base XSD Type: string
  • value comes from list: {'INTERNAL_ERROR'|'XML_ERROR'|'INVALID_DATA'|'INVALID_REQUEST'|'UNKNOWN_ERROR'}
Documentation This type defines the kind of error that occurred while processing the request.
Schema Component Representation
<xs:simpleType name="errorType">
<xs:restriction base=" xs:string ">
<xs:enumeration value="INTERNAL_ERROR"/>
<xs:enumeration value="XML_ERROR"/>
<xs:enumeration value="INVALID_DATA"/>
<xs:enumeration value="INVALID_REQUEST"/>
<xs:enumeration value="UNKNOWN_ERROR"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: image

Super-types: xs:base64Binary < image (by restriction)
Sub-types: None
Name image
Content
  • Base XSD Type: base64Binary
  • length <= 1270000
Documentation Images are represented as base64-encoded binary data.
Schema Component Representation
<xs:simpleType name="image" classification="Product">
<xs:restriction base=" xs:base64Binary ">
<xs:maxLength value="1270000"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: isoCountryCode

Super-types: None
Sub-types: None
Name isoCountryCode
Content
Schema Component Representation
<xs:simpleType name="isoCountryCode">
<xs:union memberTypes=" isoCountryCode2 isoCountryCode3 "/>
</xs:simpleType>
top

Simple Type: isoCountryCode2

Super-types: xs:string < isoCountryCode2 (by restriction)
Sub-types: None
Name isoCountryCode2
Content
  • Base XSD Type: string
  • length >= 2
Schema Component Representation
<xs:simpleType name="isoCountryCode2">
<xs:restriction base=" xs:string ">
<xs:minLength value="2"/>
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: isoCountryCode3

Super-types: xs:string < isoCountryCode3 (by restriction)
Sub-types: None
Name isoCountryCode3
Content
  • Base XSD Type: string
  • length >= 3
Schema Component Representation
<xs:simpleType name="isoCountryCode3">
<xs:restriction base=" xs:string ">
<xs:minLength value="3"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: manufacturerPartNumber

Super-types: xs:string < manufacturerPartNumber (by restriction)
Sub-types: None
Name manufacturerPartNumber
Content
  • Base XSD Type: string
  • length <= 50
Documentation This type defines the restrictions on the manufacturer's Part Number.
Schema Component Representation
<xs:simpleType name="manufacturerPartNumber" classification="Product">
<xs:restriction base=" xs:string ">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: money

Super-types: xs:decimal < money (by restriction)
Sub-types: None
Name money
Content
  • Base XSD Type: decimal
  • no. of fraction digits = 2
Documentation This type refers to an amount of money. It must be represented in decimal form with two places following the period (i.e., $2.00, not $2).
Schema Component Representation
<xs:simpleType name="money" classification="Pricing">
<xs:restriction base=" xs:decimal ">
<xs:fractionDigits value="2"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: optionDescription

Super-types: xs:string < simpleString (by restriction) < optionDescription (by restriction)
Sub-types: None
Name optionDescription
Content
  • Base XSD Type: string
  • pattern = [^%"]*
  • length <= 255
Documentation This type defines the restrictions on the option description.
Schema Component Representation
<xs:simpleType name="optionDescription" classification="Product">
<xs:restriction base=" simpleString ">
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: phoneNumber

Super-types: xs:string < phoneNumber (by restriction)
Sub-types: None
Name phoneNumber
Content
  • Base XSD Type: string
  • length <= 15
Documentation This type is for entering a phone number. It has a limit of 15 characters.
Schema Component Representation
<xs:simpleType name="phoneNumber" classification="Addresses">
<xs:restriction base=" xs:string ">
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: productCondition

Super-types: xs:string < productCondition (by restriction)
Sub-types: None
Name productCondition
Content
  • Base XSD Type: string
  • value comes from list: {'NEW'|'REFURBISHED'}
Documentation This type assigns an enumeration value to the condition of the product.
Schema Component Representation
<xs:simpleType name="productCondition" classification="Product">
<xs:restriction base=" xs:string ">
<xs:enumeration value="NEW"/>
<xs:enumeration value="REFURBISHED"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: productStatus

Super-types: xs:string < productStatus (by restriction)
Sub-types: None
Name productStatus
Content
  • Base XSD Type: string
  • value comes from list: {'DISCONTINUED'|'PENDING'|'IN_CREATIVE'|'APPROVED'|'ONSITE'|'PROBLEM'|'PARTNER_PENDING'|'PARTNER_SUBMIT'}
Documentation This type assigns an enumeration value to the status of the product.
Schema Component Representation
<xs:simpleType name="productStatus" classification="Product">
<xs:restriction base=" xs:string ">
<xs:enumeration value="DISCONTINUED"/>
<xs:enumeration value="PENDING"/>
<xs:enumeration value="IN_CREATIVE"/>
<xs:enumeration value="APPROVED"/>
<xs:enumeration value="ONSITE"/>
<xs:enumeration value="PROBLEM"/>
<xs:enumeration value="PARTNER_PENDING"/>
<xs:enumeration value="PARTNER_SUBMIT"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: returnAction

Super-types: xs:string < returnAction (by restriction)
Sub-types: None
Name returnAction
Content
  • Base XSD Type: string
  • value comes from list: {'CREDIT'|'REPLACEMENT'|'ACCESSORY'}
Documentation This code is for what the action that was taken with a return.
Schema Component Representation
<xs:simpleType name="returnAction" classification="Ordering">
<xs:restriction base=" xs:string ">
<xs:enumeration value="CREDIT"/>
<xs:enumeration value="REPLACEMENT"/>
<xs:enumeration value="ACCESSORY"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: returnCode

Super-types: xs:string < returnCode (by restriction)
Sub-types: None
Name returnCode
Content
  • Base XSD Type: string
  • value comes from list: {'NOT_WHAT_I_EXPECTED'|'DISAPPOINTED_WITH_ITEM'|'I_CHANGED_MY_MIND'|'BETTER_PRICE_ELSEWHERE'|'I_MADE_A_MISTAKE'|'GIFT_RETURN'|'NO_REASON'|'CUSTOMER_REFUSED_SHIPMENT'|'DAMAGED_IN_TRANSIT'|'ITEM_NEVER_DELIVERED'|'DELIVERY_TOO_LATE'|'NOT_AS_DESCRIBED'|'INSUFFICIENT_PACKAGING'|'SIZE_MISREPRESENTED'|'COLOR_NOT_AS_SHOWN'|'NOT_MY_ORDER'|'WRONG_ITEM_DELIVERED'|'RECEIVED_MORE_THAN_ORDERED'|'ITEM_DEFECTIVE'|'ITEM_BROKEN'|'WARRANTY'|'ACCESSORY_MISSING'|'ORDER_INCOMPLETE'|'SENT_TO_PARTNER_WAREHOUSE'}
Documentation This code is for what the reasoning behind the return was.
Schema Component Representation
<xs:simpleType name="returnCode" classification="Ordering">
<xs:restriction base=" xs:string ">
<xs:enumeration value="NOT_WHAT_I_EXPECTED"/>
<xs:enumeration value="DISAPPOINTED_WITH_ITEM"/>
<xs:enumeration value="I_CHANGED_MY_MIND"/>
<xs:enumeration value="BETTER_PRICE_ELSEWHERE"/>
<xs:enumeration value="I_MADE_A_MISTAKE"/>
<xs:enumeration value="GIFT_RETURN"/>
<xs:enumeration value="NO_REASON"/>
<xs:enumeration value="CUSTOMER_REFUSED_SHIPMENT"/>
<xs:enumeration value="DAMAGED_IN_TRANSIT"/>
<xs:enumeration value="ITEM_NEVER_DELIVERED"/>
<xs:enumeration value="DELIVERY_TOO_LATE"/>
<xs:enumeration value="NOT_AS_DESCRIBED"/>
<xs:enumeration value="INSUFFICIENT_PACKAGING"/>
<xs:enumeration value="SIZE_MISREPRESENTED"/>
<xs:enumeration value="COLOR_NOT_AS_SHOWN"/>
<xs:enumeration value="NOT_MY_ORDER"/>
<xs:enumeration value="WRONG_ITEM_DELIVERED"/>
<xs:enumeration value="RECEIVED_MORE_THAN_ORDERED"/>
<xs:enumeration value="ITEM_DEFECTIVE"/>
<xs:enumeration value="ITEM_BROKEN"/>
<xs:enumeration value="WARRANTY"/>
<xs:enumeration value="ACCESSORY_MISSING"/>
<xs:enumeration value="ORDER_INCOMPLETE"/>
<xs:enumeration value="SENT_TO_PARTNER_WAREHOUSE"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: returnType

Super-types: xs:string < returnType (by restriction)
Sub-types: None
Name returnType
Content
  • Base XSD Type: string
  • value comes from list: {'CLOSED'|'CANCELED'}
Documentation This code is for what the type of return was.
Schema Component Representation
<xs:simpleType name="returnType" classification="Ordering">
<xs:restriction base=" xs:string ">
<xs:enumeration value="CLOSED"/>
<xs:enumeration value="CANCELED"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: simpleString

Super-types: xs:string < simpleString (by restriction)
Sub-types:
Name simpleString
Content
  • Base XSD Type: string
  • pattern = [^%"]*
Documentation A "simpleString" is a string without double quotes, percent characters and HTML. The reason for the restriction is that values of this type are often shared with third parties, such as search engines, who may not be able to display special characters appropriately.
Schema Component Representation
<xs:simpleType name="simpleString">
<xs:restriction base=" xs:string ">
<xs:pattern value="[^%"]*"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: sku

Super-types: xs:string < sku (by restriction)
Sub-types: None
Name sku
Content
  • Base XSD Type: string
  • length >= 1
Documentation This type defines the restrictions on a SKU.
Schema Component Representation
<xs:simpleType name="sku" classification="Product">
<xs:restriction base=" xs:string ">
<xs:minLength value="1"/>
<-- No longer checking for maximum length of skus; this will be handled within business logic... -->
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: specificationField

Super-types: xs:string < specificationField (by restriction)
Sub-types: None
Name specificationField
Content
  • Base XSD Type: string
  • length >= 3
Documentation This type is for defining a specification field, and has a limit of 255 characters. The specification field can contain specifications, which consist of the elements "Name," "Materials," and "Author."
Schema Component Representation
<xs:simpleType name="specificationField" classification="Product">
<xs:restriction base=" xs:string ">
<xs:minLength value="3"/>
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: timeFrame

Super-types: xs:integer < timeFrame (by restriction)
Sub-types: None
Name timeFrame
Content
  • Base XSD Type: integer
  • value >= 1
Documentation This type refers to the timeframe in which a package will be delivered. It must have at least a one-digit numeric value.
Schema Component Representation
<xs:simpleType name="timeFrame" classification="Shipping">
<xs:restriction base=" xs:integer ">
<xs:minInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: url

Super-types: xs:string < url (by restriction)
Sub-types: None
Name url
Content
  • Base XSD Type: string
  • pattern = (ht|f)tp(s)?:\/\/[a-zA-Z0-9_\-.]+.*
Documentation This type is for designating a URL. It must begin with "http," and contain colins, slashes, alpha-numeric characters and periods.
Schema Component Representation
<xs:simpleType name="url">
<xs:restriction base=" xs:string ">
<xs:pattern value="(ht|f)tp(s)?:\/\/[a-zA-Z0-9_\-.]+.*"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: uuid

Super-types: xs:string < uuid (by restriction)
Sub-types: None
Name uuid
Content
  • Base XSD Type: string
  • pattern = [A-Z0-9]{8}\-[A-Z0-9]{4}\-[A-Z0-9]{4}\-[A-Z0-9]{4}\-[A-Z0-9]{12}
Documentation "uuid" stands for "universal unique identifier." It is a 32 character hexadecimal string that is used for our MerchantKey's and AuthenticationKey's.
Schema Component Representation
<xs:simpleType name="uuid">
<xs:restriction base=" xs:string ">
<xs:pattern value="[A-Z0-9]{8}\-[A-Z0-9]{4}\-[A-Z0-9]{4}\-[A-Z0-9]{4}\-[A-Z0-9]{12}"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: warrantyDescription

Super-types: xs:string < warrantyDescription (by restriction)
Sub-types: None
Name warrantyDescription
Content
  • Base XSD Type: string
  • length <= 50
Documentation This type is for the description of the warranty. It has a limit of 50 characters.
Schema Component Representation
<xs:simpleType name="warrantyDescription" classification="Warranty">
<xs:restriction base=" xs:string ">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: warrantyProvider

Super-types: xs:string < warrantyProvider (by restriction)
Sub-types: None
Name warrantyProvider
Content
  • Base XSD Type: string
  • value comes from list: {'M'|'P'|'N'}
Documentation The warranty provider can be one of two values, "M", "P", or "N". "M" stands for Manufacturer and means that the product falls under whatever warranty the Manufacturer provides. "P" stands for Partner and means that the warranty is being provided directly by the partner. "N" stands for NONE.
Schema Component Representation
<xs:simpleType name="warrantyProvider" classification="Warranty">
<xs:restriction base=" xs:string ">
<xs:enumeration value="M"/>
<xs:enumeration value="P"/>
<xs:enumeration value="N"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: zipCode

Super-types: xs:string < zipCode (by restriction)
Sub-types: None
Name zipCode
Content
  • Base XSD Type: string
  • length >= 1
Documentation This type refers to the zip code or postal code in an address. It is typically a five-digit string.
Schema Component Representation
<xs:simpleType name="zipCode" classification="Addresses">
<xs:restriction base=" xs:string ">
<xs:minLength value="1"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
top

Legend

Complex Type:

Schema Component Type

AusAddress

Schema Component Name
Super-types: Address < AusAddress (by extension)
Sub-types:
  • QLDAddress (by restriction)
If this schema component is a type definition, its type hierarchy is shown in a gray-bordered box.
Name AusAddress
Abstract no
The table above displays the properties of this schema component.
XML Instance Representation
<... country="Australia" >
<unitNo> string </unitNo> [0..1]
<houseNo> string </houseNo> [1]
<street> string </street> [1]
Start Choice [1]
<city> string </city> [1]
<town> string </town> [1]
End Choice
<state> AusStates </state> [1]
<postcode> string <<pattern = [1-9][0-9]{3}>> </postcode> [1] ?
</...>

The XML Instance Representation table above shows the schema component's content as an XML instance.

Schema Component Representation
<complexType name="AusAddress">
<complexContent>
<extension base=" Address ">
<sequence>
<element name="state" type=" AusStates "/>
<element name="postcode">
<simpleType>
<restriction base=" string ">
<pattern value="[1-9][0-9]{3}"/>
</restriction>
</simpleType>
</element>
</sequence>
<attribute name="country" type=" string " fixed="Australia"/>
</extension>
</complexContent>
</complexType>
The Schema Component Representation table above displays the underlying XML representation of the schema component. (Annotations are not shown.)
top

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

top