Product Webservice 3.0
  • 08 Apr 2024
  • 4 Minutes to read
  • Dark
    Light
  • PDF

Product Webservice 3.0

  • Dark
    Light
  • PDF

Article summary

WSDL:

https://webservices.vin65.com/V300/ProductService.cfc?wsdl

Australian URL:

https://webservices.aus.vin65.com/V300/ProductService.cfc?wsdl

Methods:

SearchProducts()
Use this method to search for products.

GetProductDetail()
Use this method to get a single product.

AddUpdateProductDetail()
Use this method to add or update a product.

Page Top

SearchProducts()

Part Of: Product Webservice 3.0

WSDL:

https://webservices.vin65.com/V300/ProductService.cfc?wsdl

Australian URL:

https://webservices.aus.vin65.com/V300/ProductService.cfc?wsdl

Description:

Use the SearchProducts() function to search for products in Vin65. Required fields are indicated by a '*'

Parameters:

AttributeData TypeDefaultDescription
WebsiteIDsUUID List Available for Enterprise Webservices
Comma seperated list of WebsiteIDs in Enterprise
Leave blank for all websites
ProductIDUUID UUID of the Vin65 Product
TitleString 255  
SKUString 50  
Type

Enumerated
("Product", "Wine",
"Spirit", "WineProduct",
"Bundle", "GiftCard",
"EventTicket", "MarketingCollateral")

  
IsActiveBoolean  
DateModifiedFromDateTime  
DateModifiedToDateTime  
MaxRowsInteger100 
PageInteger 

Sample Request:

<soap:Envelope xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema">
<soap:Body>
  <SearchProducts>
    <Request>
      <Security>
        <Username>//Your Username//</Username>
        <Password>//Your Password//</Password>
      </Security>
      <WebsiteIDs>02FC83E3-5EB4-4AA7-A64A-9710BFD9A12A</WebsiteIDs>
      <ProductID></ProductID>
      <SKU></SKU>
      <Type></Type>
      <IsActive>1</IsActive>
      <DateModifiedFrom>2011-01-01T12:21:43</DateModifiedFrom>
      <DateModifiedTo>2011-09-12T12:21:43</DateModifiedTo>
      <MaxRows>100</MaxRows>
      <Page>1</Page>
    </Request>
  </SearchPro ducts>
</soap:Body>
</soap:Envelope>  

Sample Response:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="https://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="https://www.w3.org/2001/XMLSc hema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body> 
  <SearchProductsResponse>
    <SearchProductsReturn>
      <Errors></Errors>
      <IsSuccessful>true</IsSuccessful>
      <Products>
        <Products>
          <ProductID>87a72632-1cc4-81ae-75a1-ce9b32f638be</ProductID>
          <Title>Decanter</Title>
          <SKU>Vinturi Wine Decanter</SKU>
          <Brand>Pine Wines</Brand>
          <Price>94.00</Price>
          <SalePrice/>
          <Type>Product</Type>
          <Vintage/>
          <isActive>true</isActive>
          <WebsiteID>02FC83E3-5EB4-4AA7-A64A-9710BFD9A12A</WebsiteID>
          <DateModified>2012-04-13T21:27:49.153Z</DateModified>
        </Products>
        <Products>
          <ProductID>c9351da6-a936-4086-3619-93ff763536bf</ProductID>
          <Title>2009 Merlot</Title>
          <SKU>Merlot</SKU>
          <Brand/>
          <Price>99.00</Price>
          <SalePrice/>
          <Type>Wine</Type>
          <Vintage>2009</Vintage>
          <isActive>false</isActive>
          <WebsiteID>02FC83E3-5EB4-4AA7-A64A-9710BFD9A12A</WebsiteID>
          <DateModified>2012-04-13T22:00:12.497Z</DateModified>
        </Products>
      </Products>
      <RecordCount>2</RecordCount>
    </SearchProductsReturn>
  </SearchProductsResponse>
</soapenv:Body>
</soapenv:Envelope> 

Page Top

GetProductDetail()

Part Of: Product Webservice 3.0

WSDL:

https://webservices.vin65.com/V300/ProductService.cfc?wsdl

Australian URL:

https://webservices.aus.vin65.com/V300/ProductService.cfc?wsdl

Description:

Use the GetProduct() function to retrieve a single product.

Parameters:

AttributeData TypeDefaultDescription
WebsiteIDUUID Available For Enterprise Webservices
UUID of the Vin65 Website
Not necessary if ProductID is present
Useful if searching by SKU and SKU is not unique across Enterprise
ProductID*UUID UUID of the Vin65 Product
One of either the ProductID or SKU is required.
SKU*String 50 One of either the ProductID or SKU is required.

Sample Request:

<soap:Envelope xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema">
<soap:Body>
  <GetProductDetail>
    <Request>
      <Security>
        <Username>//Your Username//</Us ername>
        <Password>//Your Password//</Password>
      </Security>
      <ProductID>eaecd602-db2a-da9d-8a37-ea0c791fed9f</ProductID>
    </Request>
  </GetProductDetail>
</soap:Body>
</soap:Envelope>  

Sample Response:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="https://schem as.xmlsoap.org/soap/envelope/" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
  <GetProductDetailResponse>
    <GetProductDetailReturn>
      <Errors></Errors>
      <IsSuccessful>true</IsSuccessful>
      <Product>
        <ProductID>eaecd602-db2a-da9d-8a37-ea0c791fed9f</ProductID>
        <Title>Chardonnay</Title>
        <Type>Wine</Type>
        <Brand>Pine Wines</Brand>
        <ActionMessage/>
        <BundleItems/>
        <Description>
          <Description>This is a sample description.</Description>
          <Teaser>This is a sample teaser.</Teaser>
        </Description>
        <IsActive>true</IsActive>
        <IsDisplayOnWebsite>true</IsDisplayOnWebsite>
        <Media/>
        <Photos>
          <Photo>
            <Caption/>
            <DisplayOrder>1</DisplayOrder>
            <Photo>white-bottle.png</Photo>
            <Title/>
          </Photo>
        </Photos>
        <POSTitle>Chardonnay</POSTitle>
        <SKUs>
          <SKU>
            <CostOfGood>10.00</CostOfGood>
            <DisplayOrder>1</DisplayOrder>
            <Inventory>
              <Inventory>
                <CurrentInventory>9935</CurrentInventory>
                <InventoryPool>Default Warehouse Location</InventoryPool>
              </Inventory>
            </Inventory>
            <IsInventoryOn>true</IsInventoryOn>
            <IsNoShippingCharge>false</IsNoShippingCharge>
            <IsNonTaxable>false</IsNonTaxable>
            <MaxOrderQty/>
            <MinOrderQty/>
            <OrderInMultiplesOf/>
            <Prices>
              <Price>
                <Price>32.00</Price>
                <PriceLevel>Retail</PriceLevel>
                <PriceQuantity>1</PriceQuantity>
                <SalePrice/>
              </Price>
              <Price>
                <Price>18.00</Price>
                <PriceLevel>Trade</PriceLevel>
                <PriceQuantity>1</PriceQuantity>
                <SalePrice/>
              </Price>
            </Prices>
            <SKU>Chardonnay</SKU>
            <UPCCode/>
            <UnitDescription>750ml</UnitDescription>
            <Weight>3.0</Weight>
          </SKU>
        </SKUs>
        <SpiritProperties/>
        <SubTitle></SubTitle>
        <VintageNotes/>
        <WebsiteID>f660d5e3-0173-4a19-0838-3eff95f2f20b</WebsiteID>
        <WineProperties>
          <Acid></Acid>
          <Alcohol>14.3</Alcohol>
          <Appellation>Okanagan</Appellation>
          <AvgRating>94.0</AvgRating>
          <Awards>Gold Medal First Place at the 2008 Okanagan Icewine Festival</Awards>
          <BottleSize>750ml</BottleSize>
          <BottleSizeInML>750</BottleSizeInML>
          <BottlesInCase/>
          <BottlingDate/>
          <CGRating/>
          <Fermentation/>
          <FoodPairingNotes/>
          <HarvestDate/>
          <JHRating/>
          <OtherNotes >This is not a real wine, this is a demo website</OtherNotes>
          <PH>3.48</PH>
          <Production></Production>
          <ProductionNotes></ProductionNotes>
          <RPRating>94.0</RPRating>
          <Ratings/>
          <Region>Canada</Region>
          <ResidualSugar>222 g/l</ResidualSugar>
          <STRating/>
          <Sugar></Sugar>
          <Tannin>9.23 g/l</Tannin>
          <TastingNotes>Distinctive character, with rich palate coating textures and lots of layers and depth - this is benchmark Wine</TastingNotes>
          <Type>White</Type>
          <Varietal>Chardonnay</Varietal>
          <VineyardDesignation/>
          <VineyardNotes/>
          <Vintage>2006</Vintage>
          <WARating/>
          <WAndSRating/>
          <WBRating/>
          <WERating/>
          <WNRating/>
          <WSRating/>
          <WineMakerNotes/>
        </WineProperties>
        <DateAdded>2011-10-03T16:50:09.057Z</DateAdded>
        <DateModified>2012-04-18T00:01:21.303Z</DateModified>
      </Product>
      <RecordCount>1</RecordCount>
    </GetProductDetailReturn>
  </GetProductDetailResponse>
</soapenv:Body>
</soapenv:Envelope>   

AddUpdateProduct()

Part Of: Product Webservice 3.0

WSDL:

https://webservices.vin65.com/V300/ProductService.cfc?wsdl

Australian URL:

https://webservices.aus.vin65.com/V300/ProductService.cfc?wsdl

Description:

Use the AddUpdateProduct() function to add or update a product in Vin65. Required fields are indicated by a '*'

**Note - You must send all product attributes in an update request or they will be cleared out. Recommended practice is to getProductDetails prior to update and sync the changes then push the full product up**

Parameters:

AttributeData TypeDefaultDescription
WebsiteID*UUID Only required for Enterprise Webservices
UUID of the Vin65 Website
ProductIDUUID UUID of the Vin65 Product
Type*

Enumerated
("Product", "Wine", "Spirit", "WineProduct", "Bundle", "GiftCard", "EventTicket", "MarketingCollateral")

  
BrandString 50 If Mode eq 'CreateAttributes' Brand will be created on the fly.  If Mode eq 'Strict' Brand must exist or add/update will error.
TitleString 255  
POSTitleString 50  
SubTitleString 255  
ActionMessageString 255  
IsActiveBoolean0 
IsDisplayOnWebsiteBoolean0 
Description   
Description:TeaserString  
Description:Descripton:String  
WineProperties   
WineProperties:BottlesInCaseInteger  
WineProperties:BottleSizeString 50 If Mode eq 'CreateAttributes' BottleSize will be created on the fly. If Mode eq 'Strict' BottleSize must exist or add/update will error.
WineProperties:BottleSizeInMLInteger If Mode eq 'CreateAttributes' BottleSize will be created on the fly. If Mode eq 'Strict' BottleSize must exist or add/update will error.
WineProperties:VintageInteger  
WineProperties:TypeString 50 Required if Varietal Provided.
If Mode eq 'CreateAttributes' Type will be created on the fly. If Mode eq 'Strict' Type must exist or add/update will error.
WineProperties:VarietalString 255 If Mode eq 'CreateAttributes' Varietal will be created on the fly. If Mode eq 'Strict' Varietal must exist or add/update will error.
WineProperties:RegionString 255 Required if Appellation Provided.
If Mode eq 'CreateAttributes' Region will be created on the fly. If Mode eq 'Strict' Region must exist or add/update will error.
WineProperties:AppellationString 255 If Mode eq 'CreateAttributes' Appellation will be created on the fly. If Mode eq 'Strict' Appellation must exist or add/update will error.
WineProperties:WSRatingInteger  
WineProperties:WAndSRatingInteger  
WineProperties:CGRatingInteger  
WineProperties:RPRatingInteger  
WineProperties:JHRatingInteger  
WineProperties:STRatingInteger  
WineProperties:WNRatingInteger  
WineProperties:WERatingInteger  
WineProperties:WARatingInteger  
WineProperties:WBRatingInteger  
WineProperties:AvgRatingNumeric Vin65 Calculated Field
WineProperties:HarvestDateString 255  
WineProperties:SugarString 255  
WineProperties:AcidString 255  
WineProperties:PHString 255  
WineProperties:FermentationString 255  
WineProperties:BottlingDateString 255  
WineProperties:ResidualSugarString 255  
WineProperties:TanninString 255  
WineProperties:AlcoholString 255  
WineProperties:TastingNotesString  
WineProperties:RatingsString  
WineProperties:AwardsString  
WineProperties:VineyardDesignationString 255  
WineProperties:VineyardNotesString  
WineProperties:ProductionNotesString  
WineProperties:WineMakerNotesString  
WineProperties:FoodPairingNotesString  
WineProperties:ProductionString  
WineProperties:OtherNotesString  
SpiritProperties   
SpiritProperties:TypeString 255  
SpiritProperties:CountryString 255  
SpiritProperties:RegionString 255  
Photos   
Photos:PhotoString 250 Required if Photo Provided
Photos:TitleString 255  
Photos:CaptionString  
Photos:DisplayOrderInteger  
BundleItems   
BundleItems:QuantityInteger Required if Type is Bundle
BundleItems:SKUString 50 

Required if Type is Bundle.
SKU must exist before bundle can be created.

Media   
Media:TypeEnumerated
("PDF")
 Required if Media Provided
Media:FileString 255 Required if Media Provided
Media:ThumbnailString 255  
Media:TitleString 255 Required if Media Provided
Media:CaptionString 255  
Media:DisplayOrderInteger  
VintageNotes   
VintageNotes:VintageInteger Required if Vintage Note Provided
VintageNotes:NoteString Required if Vintage Note Provided
SKUs   
SKUs:SKUString 50 Required for all SKUs
SKUs:CostOfGoodNumeric  
SKUs:UPCCodeString 255  
SKUs:UnitDescriptionString 255  
SKUs:MinOrderQtyInteger1 
SKUs:MaxOrderQtyInteger  
SKUs:OrderInMultiplesOfInteger  
SKUs:WeightNumeric0 
SKUs:IsNonTaxableBoolean0 
SKUs:IsNoShippingChargeBoolean  
SKUs:DisplayOrderInteger  
SKUs:Prices   
SKUs:Prices:PriceLevelString 50 Price Level must exist or add/update will error.
SKUs:Prices:PriceNumeric Required for all SKU Prices
SKUs:Prices:SalePriceNumeric  
SKUs:Prices:PriceQuantityInteger  
SKUs:IsInventoryOnBoolean0 
SKUs:Inventory   
SKUs:Inventory:InventoryPool*String 50 Inventory Pool must exist or add/update will error.
SKUs:Inventory:CurrentInventoryInteger  
DateAddedDate/Time  
DateModifiedDate/Time  

Sample Request:

<soap:Envelope xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema">
<soap:Body>
  <AddUpdateProductDetail>
    <Request>
      <Security>
        <Username>//Your Username//</Username>
        <Password>//Your Password//</Password>
      </Security>
      <Product>
        <WebsiteID></WebsiteID>
        <ProductID></ProductID>
        <Type>Wine</Type>
        <Brand></Brand>
        <Title>Merlot Via Webservice</Title>
        <SubTitle></SubTitle>
        <POSTitle></POSTitle>
        <ActionMessage></ActionMessage>
        <IsActive>false</IsActive>
        <IsDisplayOnWebsite>false</IsDisplayOnWebsite>
        <Description>
          <Teaser></Teaser>
          <Description></Description>
        </Description>
        <WineProperties>
          <BottlesInCase></BottlesInCase>
          <BottleSize>750ml</BottleSize>
          <Vintage></Vintage>
          <Type>Red</Type>
          <Varietal>Merlot</Varietal>
          <Region>Australia</Region>
          <Appellation></Appellation>
          <WSRating></W SRating>
          <WAndSRating></WAndSRating>
          <CGRating></CGRating>
          <RPRating></RPRating>
          <JHRating></JHRating>
          <STRating></STRating>
          <WNRating></WNRating>
          <WERating></WERating>
          <WARating></WARating>
          <WBRating></WBRating>
          <AvgRating></AvgRating>
          <HarvestDate></HarvestDate>
          <Sugar></Sugar>
          <Acid></Acid>
          <PH></PH>
          <Fermentation></Fermentation>
          <BottlingDate></BottlingDate>
          <ResidualSugar></ResidualSugar>
          <Tannin></Tannin>
          <Alcohol></Alcohol>
          <TastingNotes></TastingNotes>
          <Ratings></Ratings>
          <Awards></Awards>
          <VineyardDesignation></VineyardDesignation>
          <VineyardNotes></VineyardNotes>
          <ProductionNotes></ProductionNotes>
          <WineMakerNotes></WineMakerNotes>
          <FoodPairingNotes></FoodPairingNotes>
          <Production></Production>
          <OtherNotes></OtherNotes>
        </WineProperties>
        <Photos>
          <Photo>
            <Photo>Tinsel.jpg</Photo>
            <Title>Testing</Title>
            <Caption></Caption>
            <DisplayOrder>1</DisplayOrder>
          </Photo>
        </Photos>
        <Media>
          <Media>
            <Type>PDF</Type>
            <File>123.jpg</File>
            <Thumbnail></Thumbnail>
            <Title>Media Title</Title>
            <Caption>Caption</Caption>
            <DisplayOrder></DisplayOrder>
          </Media>
          <Media>
            <Type>PDF</Type>
            <File>1234.jpg</File>
            <Thumbnail></Thumbnail>
            <Title>Media2 Title</Title>
            <Caption>Caption2</Caption>
            <DisplayOrder>2</DisplayOrder>
          </Media>
        </Media>
        <VintageNotes>
          <VintageNote>
            <Vintage>2000</Vintage>
            <Note>this is the notes</Note>
          </VintageNote>
          <VintageNote>
            <Vintage>2001</Vintage>
            <Note>this is the notes</Note>
          </VintageNote>
        </VintageNotes>
        <SKUs>
          <SKU>
            <SKU>Merlot</SKU>
            <CostOfGood>10.00</CostOfGood>
            <UPCCode></UPCCode>
            <UnitDescription></UnitDescription>
            <MinOrderQty></MinOrderQty>
            <MaxOrderQty></MaxOrderQty>
            <OrderInMultiplesOf></OrderInMultiplesOf>
            <Weight></Weight>
            <IsNonTaxable></IsNonTaxable>
            <IsNoShippingCharge></IsNoShippingCharge>
            <DisplayOrder></DisplayOrder>
            <Prices>
              <Price>
                <PriceLevel></PriceLevel>
                <Price>200.00</Price>
                <SalePrice></SalePrice>
                <PriceQuantity></PriceQuantity>
              </Price>
            </Prices>
            <IsInventoryOn>1</IsInventoryOn>
            <Inventory>
              <Inventory>
                <InventoryPool></InventoryPool>
                <CurrentInventory>20</CurrentInventory>
              </Inventory>
            </Inventory>
          </SKU>
        </SKUs>
      </Product>
      <Mode>Strict</Mode>
    </Request>
  </AddUpdateProductDetail>
</soap:Body>  
</soap:Envelope>  

Sample Response:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="ht tp://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
  <AddUpdateProductDetailResponse>
    <AddUpdateProductDetailReturn>
      <Errors></Errors>
      <IsSuccessful>true</IsSuccessful>
      <ProductID>1ce73176-e448-faac-3d8f-a52333091695</ProductID>
      <RecordCount>1</RecordCount>
    </AddUpdateProductDetailReturn>
  </AddUpdateProductDetailResponse>
</soapenv:Body>
</soapenv:Envelope>   

Was this article helpful?