GetItems
Returns price, volume, and description for one or more item codes.Input Properties
GetItemsRequest
Output Properties
GetItemsResponse
ItemResponse
ItemMemberResponse
KitMemberResponse
KitMemberItemResponse
Http Request
GET https://yourcompany-api.exigo.com/3.0/item?currencyCode=usd &priceType=1 &warehouseID=1 &itemCodes=1 &returnLongDetail=1 &restrictToWarehouse=1 Authorization: Basic base64Encoded
Http Response
HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Content-Length: length{ "items": null, "result": null }
Soap Request
The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.
POST /3.0/ExigoApi.asmx HTTP/1.1 Host: lifewave-api.exigo.com Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "https://api.exigo.com/GetItems" <?xml version="1.0" encoding="utf-8"?> <soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <ApiAuthentication xmlns="http://api.exigo.com/"> <LoginName>string</LoginName> <Password>string</Password> <Company>string</Company> <Identity>string</Identity> <RequestTimeUtc>dateTime</RequestTimeUtc> <Signature>string</Signature> </ApiAuthentication> </soap:Header> <soap:Body> <GetItemsRequest xmlns="http://api.exigo.com/"> <CurrencyCode>string</CurrencyCode> <PriceType>int</PriceType> <WarehouseID>int</WarehouseID> <ItemCodes> <string>string</string> </ItemCodes> <WebID>int</WebID> <WebCategoryID>int</WebCategoryID> <ReturnLongDetail>boolean</ReturnLongDetail> <RestrictToWarehouse>boolean</RestrictToWarehouse> <LanguageID>int</LanguageID> <ExcludeHideFromSearch>boolean</ExcludeHideFromSearch> </GetItemsRequest> </soap:Body> </soap:Envelope>
Soap Response
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetItemsResult xmlns="http://api.exigo.com/"> <Items> <ItemResponse> <ItemCode>string</ItemCode> <Description>string</Description> <Price>decimal</Price> <Weight>decimal</Weight> <CommissionableVolume>decimal</CommissionableVolume> <BusinessVolume>decimal</BusinessVolume> <Other1Price>decimal</Other1Price> <Other2Price>decimal</Other2Price> <Other3Price>decimal</Other3Price> <Other4Price>decimal</Other4Price> <Other5Price>decimal</Other5Price> <Other6Price>decimal</Other6Price> <Other7Price>decimal</Other7Price> <Other8Price>decimal</Other8Price> <Other9Price>decimal</Other9Price> <Other10Price>decimal</Other10Price> <Category>string</Category> <CategoryID>int</CategoryID> <TinyPicture>string</TinyPicture> <SmallPicture>string</SmallPicture> <LargePicture>string</LargePicture> <ShortDetail>string</ShortDetail> <ShortDetail2>string</ShortDetail2> <ShortDetail3>string</ShortDetail3> <ShortDetail4>string</ShortDetail4> <LongDetail>string</LongDetail> <LongDetail2>string</LongDetail2> <LongDetail3>string</LongDetail3> <LongDetail4>string</LongDetail4> <InventoryStatus>Available or OnBackOrder or OutOfStock or Discontinued</InventoryStatus> <StockLevel>int</StockLevel> <AvailableStockLevel>int</AvailableStockLevel> <MaxAllowedOnOrder>int</MaxAllowedOnOrder> <Field1>string</Field1> <Field2>string</Field2> <Field3>string</Field3> <Field4>string</Field4> <Field5>string</Field5> <Field6>string</Field6> <Field7>string</Field7> <Field8>string</Field8> <Field9>string</Field9> <Field10>string</Field10> <OtherCheck1>boolean</OtherCheck1> <OtherCheck2>boolean</OtherCheck2> <OtherCheck3>boolean</OtherCheck3> <OtherCheck4>boolean</OtherCheck4> <OtherCheck5>boolean</OtherCheck5> <IsVirtual>boolean</IsVirtual> <AllowOnAutoOrder>boolean</AllowOnAutoOrder> <IsGroupMaster>boolean</IsGroupMaster> <GroupDescription>string</GroupDescription> <GroupMembersDescription>string</GroupMembersDescription> <GroupMembers> <ItemMemberResponse> <ItemCode>string</ItemCode> <MemberDescription>string</MemberDescription> <ItemDescription>string</ItemDescription> <InventoryStatus>Available or OnBackOrder or OutOfStock or Discontinued</InventoryStatus> <StockLevel>int</StockLevel> <AvailableStockLevel>int</AvailableStockLevel> </ItemMemberResponse> </GroupMembers> <IsDynamicKitMaster>boolean</IsDynamicKitMaster> <HideFromSearch>boolean</HideFromSearch> <KitMembers> <KitMemberResponse> <Description>string</Description> <KitMemberItems xsi:nil="true" /> </KitMemberResponse> </KitMembers> <TaxablePrice>decimal</TaxablePrice> <ShippingPrice>decimal</ShippingPrice> </ItemResponse> </Items> </GetItemsResult> </soap:Body> </soap:Envelope>
C# Rest Client
Install Nuget package Exigo.Api.Client
try
{
//Create Api Client
var api = new ExigoApiClient("yourcmpany", "yourlogin", "yourpassword");
//Create Request
var req = new GetItemsRequest();
req.CurrencyCode = "usd";
req.PriceType = 1; //Controls which price band to use
req.WarehouseID = 1; //Unique location for orders
//Add ItemCodes
var itemcodes = new List<String>();
itemcodes.Add("1");
itemcodes.Add("2");
//Now attach the list to the request
req.ItemCodes = itemcodes.ToArray();
req.ReturnLongDetail = true;
req.RestrictToWarehouse = true; //Determines if the items returned must be available in the provided WarehouseID (Default: false)
//Send Request to Server and Get Response
var res = await api.GetItemsAsync(req);
//Now examine the results:
foreach (var item in res.Items)
{
Console.WriteLine("ItemCode: {0}", item.ItemCode);
Console.WriteLine("Description: {0}", item.Description);
Console.WriteLine("Price: {0}", item.Price);
Console.WriteLine("Weight: {0}", item.Weight);
Console.WriteLine("StockLevel: {0}", item.StockLevel);
Console.WriteLine("AvailableStockLevel: {0}", item.AvailableStockLevel);
Console.WriteLine("IsDynamicKitMaster: {0}", item.IsDynamicKitMaster);
foreach (var kitMember in item.KitMembers)
{
Console.WriteLine("Description: {0}", kitMember.Description);
foreach (var kitMemberItem in kitMember.KitMemberItems)
{
Console.WriteLine("ItemCode: {0}", kitMemberItem.ItemCode);
Console.WriteLine("Description: {0}", kitMemberItem.Description);
Console.WriteLine("InventoryStatus: {0}", kitMemberItem.InventoryStatus);
}
}
}
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex.Message);
}
C# Soap Client
try
{
//Create Main API Context Object
ExigoApi api = new ExigoApi();
//Create Authentication Header
ApiAuthentication auth = new ApiAuthentication();
auth.LoginName = "yourLoginName";
auth.Password = "yourPassword";
auth.Company = "yourCompany";
api.ApiAuthenticationValue = auth;
//Create Request
GetItemsRequest req = new GetItemsRequest();
req.CurrencyCode = "usd";
req.PriceType = 1; //Controls which price band to use
req.WarehouseID = 1; //Unique location for orders
//Add ItemCodes
List<String> itemcodes = new List<String>();
itemcodes.Add("1");
itemcodes.Add("2");
//Now attach the list to the request
req.ItemCodes = itemcodes.ToArray();
req.ReturnLongDetail = true;
req.RestrictToWarehouse = true; //Determines if the items returned must be available in the provided WarehouseID (Default: false)
//Send Request to Server and Get Response
GetItemsResponse res = api.GetItems(req);
//Now examine the results:
foreach (ItemResponse item in res.Items)
{
Console.WriteLine("ItemCode: {0}", item.ItemCode);
Console.WriteLine("Description: {0}", item.Description);
Console.WriteLine("Price: {0}", item.Price);
Console.WriteLine("Weight: {0}", item.Weight);
Console.WriteLine("StockLevel: {0}", item.StockLevel);
Console.WriteLine("AvailableStockLevel: {0}", item.AvailableStockLevel);
Console.WriteLine("IsDynamicKitMaster: {0}", item.IsDynamicKitMaster);
foreach (KitMemberResponse kitMember in item.KitMembers)
{
Console.WriteLine("Description: {0}", kitMember.Description);
foreach (KitMemberItemResponse kitMemberItem in kitMember.KitMemberItems)
{
Console.WriteLine("ItemCode: {0}", kitMemberItem.ItemCode);
Console.WriteLine("Description: {0}", kitMemberItem.Description);
Console.WriteLine("InventoryStatus: {0}", kitMemberItem.InventoryStatus);
}
}
}
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex.Message);
}
VB.Net
Try
'Create Main API Context Object
Dim api as new ExigoApi()
'Create Authentication Header
Dim auth as new ApiAuthentication()
auth.LoginName = "yourLoginName"
auth.Password = "yourPassword"
auth.Company = "yourCompany"
api.ApiAuthenticationValue = auth
'Create Request
Dim req as new GetItemsRequest()
req.CurrencyCode = "usd"
req.PriceType = 1
req.WarehouseID = 1
'Add ItemCodes
Dim itemcodes As New List(Of String)()
itemcodes.Add("1")
itemcodes.Add("2")
'Now attach the list to the request
req.ItemCodes = itemcodes.ToArray()
req.ReturnLongDetail = true
req.RestrictToWarehouse = true
'Send Request to Server and Get Response
Dim res As GetItemsResponse = api.GetItems(req)
'Now examine the results:
For Each item As ItemResponse In res.Items
Console.WriteLine("ItemCode: {0}", item.ItemCode)
Console.WriteLine("Description: {0}", item.Description)
Console.WriteLine("Price: {0}", item.Price)
Console.WriteLine("Weight: {0}", item.Weight)
Console.WriteLine("StockLevel: {0}", item.StockLevel)
Console.WriteLine("AvailableStockLevel: {0}", item.AvailableStockLevel)
Console.WriteLine("IsDynamicKitMaster: {0}", item.IsDynamicKitMaster)
For Each kitMember As KitMemberResponse In item.KitMembers
Console.WriteLine("Description: {0}", kitMember.Description)
For Each kitMemberItem As KitMemberItemResponse In kitMember.KitMemberItems
Console.WriteLine("ItemCode: {0}", kitMemberItem.ItemCode)
Console.WriteLine("Description: {0}", kitMemberItem.Description)
Console.WriteLine("InventoryStatus: {0}", kitMemberItem.InventoryStatus)
Next
Next
Next
Catch ex As Exception
Console.WriteLine("Error: " & ex.Message)
End Try
PHP
Note: PHP is not officially supported.<?php
try
{
//Setup the SoapClient and Authentication
$api = new SoapClient("http://api.exigo.com/3.0/ExigoApi.asmx?WSDL");
$ns = "http://api.exigo.com/";
$auth = array()
$auth["LoginName"] = new SoapVar("yourLoginName",XSD_STRING,null,null,null,$ns);
$auth["Password"] = new SoapVar("yourPassword",XSD_STRING,null,null,null,$ns);
$auth["Company"] = new SoapVar("yourCompany",XSD_STRING,null,null,null,$ns);
$headerBody = new SoapVar($auth, SOAP_ENC_OBJECT);
$header = new SoapHeader($ns, 'ApiAuthentication', $headerBody);
$api->__setSoapHeaders(array($header));
//Create Request
$req->CurrencyCode = "usd";
$req->PriceType = 1;
$req->WarehouseID = 1;
//Add ItemCodes
$itemCode1->Length = 1;
$itemCode1->Chars = 1;
$itemCode2->Length = 2;
$itemCode2->Chars = 2;
//Now attach the list to the request
req.ItemCodes = array(itemCode1,itemCode2);
$req->ReturnLongDetail = 1;
$req->RestrictToWarehouse = 1;
//Send Request to Server and Get Response
$res = $api.GetItems($req);
//Now examine the results:
}
catch (SoapFault $ex)
{
echo "Error: ", $ex->getMessage();
}
?>
Java
Note: Java is not officially supported.try
{
//Create Main API Context Object
ExigoApi api = new ExigoApi();
//Create Authentication Header
ApiAuthentication auth = new ApiAuthentication();
auth.setLoginName("yourLoginName");
auth.setPassword("yourPassword");
auth.setCompany("yourCompany");
api.setApiAuthenticationValue(auth);
//Create Request
GetItemsRequest req = new GetItemsRequest();
req.setCurrencyCode("usd");
req.setPriceType(1);
req.setWarehouseID(1);
//Add ItemCodes
ArrayOfSystem.String itemcodes = new ArrayOfSystem.String();
String itemCode1 = new String();
itemCode1.setLength(1);
itemCode1.setChars(1);
itemcodes.Add(itemCode1);
String itemCode2 = new String();
itemCode2.setLength(2);
itemCode2.setChars(2);
itemcodes.Add(itemCode2);
//Now attach the list to the request
req.setItemCodes(itemcodes);
req.setReturnLongDetail(1);
req.setRestrictToWarehouse(1);
//Send Request to Server and Get Response
GetItemsResponse res = api.getExigoApiSoap().getItems(req, auth);
//Now examine the results:
}
catch (Exception ex)
{
System.out.println("Error: " + ex.getMessage());
}
CSV
HTTP Get Request:
https://lifewave-api.exigo.com/3.0/csv/?method=GetItems
&ApiLoginName=String
&ApiPassword=String
&ApiCompany=String
&CurrencyCode=String
&PriceType=Int32
&WarehouseID=Int32
&ItemCodes=String[]
&WebID=Object
&WebCategoryID=Object
&ReturnLongDetail=Boolean
&RestrictToWarehouse=Nullable`1
&LanguageID=Object
&ExcludeHideFromSearch=Nullable`1
Response Fields
ItemCode,Description,Price,Weight,CommissionableVolume,BusinessVolume,Other1Price,Other2Price,Other3Price,Other4Price,Other5Price,Other6Price,Other7Price,Other8Price,Other9Price,Other10Price,Category,CategoryID,TinyPicture,SmallPicture,LargePicture,ShortDetail,ShortDetail2,ShortDetail3,ShortDetail4,LongDetail,LongDetail2,LongDetail3,LongDetail4,InventoryStatus,StockLevel,AvailableStockLevel,MaxAllowedOnOrder,Field1,Field2,Field3,Field4,Field5,Field6,Field7,Field8,Field9,Field10,OtherCheck1,OtherCheck2,OtherCheck3,OtherCheck4,OtherCheck5,IsVirtual,AllowOnAutoOrder,IsGroupMaster,GroupDescription,GroupMembersDescription,ItemCode,MemberDescription,ItemDescription,InventoryStatus,StockLevel,AvailableStockLevel,IsDynamicKitMaster,HideFromSearch,Description,ItemCode,Description,InventoryStatus,TaxablePrice,ShippingPrice
String,String,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,Decimal,String,Int32,String,String,String,String,String,String,String,String,String,String,String,InventoryStatusType,Int32,Int32,Int32,String,String,String,String,String,String,String,String,String,String,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,String,String,String,String,String,InventoryStatusType,Int32,Int32,Boolean,Boolean,String,String,String,InventoryStatusType,Decimal,Decimal