Purpose: The purpose of the SearchParts method is to search the third party for any parts that are available.
Detail: The example API below can be used by third party to generate an API from the WSDL. The below is only an example and we require the third party to creating an API for autoVHC to interact with.
Example API: http://demo.wsautovhc.co.uk/IntegrationAPI.asmx
Method: SearchParts
Sequence Diagram:
Request Structure:
Example Code: Click here to download
<SearchParts xmlns="http://autovhc.co.uk/">
<Request>
<Locale>en-GB</Locale>
<JobCardNumber>2148110729</JobCardNumber>
<CustomerID>11426</CustomerID>
<LocationCode>01</LocationCode>
<PartCriteria>
<PartNo>1763677</PartNo>
<PartDesc />
<QuantityRequired>1</QuantityRequired>
</PartCriteria>
<ParametersCollection>
<Parameters>
<DMSParameter>
<Name>USERNAME</Name>
<Value />
</DMSParameter>
<DMSParameter>
<Name>PASSWORD</Name>
<Value />
</DMSParameter>
</Parameters>
</ParametersCollection>
<WildCardSearch>true</WildCardSearch>
</Request>
</SearchParts>
If the user wanted to, they could search for the required part by searching via the part description field. This returns the same request as above, however in this example, the part number is blank, and the part description is populated.
<SearchParts xmlns="http://autovhc.co.uk/">
<Request>
<Locale>en-GB</Locale>
<JobCardNumber>2148110729</JobCardNumber>
<CustomerID>11426</CustomerID>
<LocationCode>01</LocationCode>
<PartCriteria>
<PartNo />
<PartDesc>Brakes</PartDesc>
<QuantityRequired>1</QuantityRequired>
</PartCriteria>
<ParametersCollection>
<Parameters>
<DMSParameter>
<Name>USERNAME</Name>
<Value />
</DMSParameter>
<DMSParameter>
<Name>PASSWORD</Name>
<Value />
</DMSParameter>
</Parameters>
</ParametersCollection>
<WildCardSearch>true</WildCardSearch>
</Request>
</SearchParts>
SearchPartsRequest | ||||
PropertyName | PropertyType | Example | Description | Mandatory |
Locale | String | en-GB | The .NET CurrentCulture.Name | Yes |
JobCardNumber | String | 45847 | DMS Package Code | Yes |
CustomerID | String | 11544854 | DMS Unique customer identifier | Yes |
LocationCode | String | M1 | Used by some DMS require this to identify specific dealer data | Yes |
PartCriteria | PartTransferObject | (see Response Objects) | autoVHC will partially populate this with Part number, description, quantity required | No |
ParametersCollection | DMSParametersCollection | (see below) | No | |
WildCardSearch | Boolean | TRUE | Indicates the user has request to search the DMS using wild cards | Yes |
A wildcard can be used with a search term to find items in the external system which contain the term, and not just an exact match. In an example where the wildcard character is ‘%’, and the user wants to find all windscreen wipers, they may enter %Wiper%
– this will return ‘Front Wipers’, ‘Rear Wipers’, ‘Wiper blades’ and so on.
DMSParametersCollection | ||||
PropertyName | PropertyType | Example | Description | Mandatory |
Name | String | Username | The name of the key pair value | Yes |
Value | String | admin | The value of the key pair value | Yes |
Response Structure:
Example Code: Click here to download
<SearchParts xmlns="http://autovhc.co.uk/">
<Request>
<Locale>string</Locale>
<JobCardNumber>string</JobCardNumber>
<CustomerID>string</CustomerID>
<LocationCode>string</LocationCode>
<PartCriteria>
<MarketingCode>string</MarketingCode>
<Discount>string</Discount>
<OriginalPrice>string</OriginalPrice>
<VATRate>string</VATRate>
<CostItemID>string</CostItemID>
<PartID>string</PartID>
<PartNo>string</PartNo>
<PartDesc>string</PartDesc>
<Stock>string</Stock>
<PartPrice>string</PartPrice>
<Quantity>string</Quantity>
<QuantityRequired>string</QuantityRequired>
<LabourTime>string</LabourTime>
<LabourPrice>string</LabourPrice>
<FittedPrice>string</FittedPrice>
<Auth>string</Auth>
<Deleted>string</Deleted>
<VHCitemID>string</VHCitemID>
<TimeStamp>string</TimeStamp>
<SiteCode>string</SiteCode>
<BinLocation>string</BinLocation>
<BrandCode>string</BrandCode>
<ServiceMenuCode>string</ServiceMenuCode>
<Fluid>string</Fluid>
<Make>string</Make>
<Brand>string</Brand>
<Sundries>string</Sundries>
<DMSUniqueID>string</DMSUniqueID>
</PartCriteria>
<ParametersCollection>
<Parameters>
<DMSParameter>
<Name>string</Name>
<Value>string</Value>
</DMSParameter>
<DMSParameter>
<Name>string</Name>
<Value>string</Value>
</DMSParameter>
</Parameters>
</ParametersCollection>
<WildCardSearch>boolean</WildCardSearch>
</Request>
</SearchParts>
SearchPartsResponse | ||||
PropertyName | PropertyType | Example | Description | Mandatory |
Message | String | Call successful | A message that will indicate why the request failed, Call Successful if it succeeds | Yes |
Success | Boolean | TRUE | Will be either True or False depending on the success of the request | Yes |
Locale | String | en-GB | Culture code | Yes |
CurrencyCode | String | EUR | ISO Currency code | Yes |
PartsCollection | PartTransferObject[] | (see below) | No | |
AdditionalRecords | Boolean | FALSE | True indicates there are more parts available than those returned, the user must refine their search term | Yes |
PartTransferObject | ||||
PropertyName | PropertyType | Example | Description | Mandatory |
MarketingCode | String | 464 | Ford MLI code | No |
Discount | String | 5 | Amount the unit part price has been discounted by (OriginalPrice – PartPrice) | No |
OriginalPrice | String | 50.00 | Original unit part price | Yes |
VATRate | String | 20 | Tax rate 20=20% | Yes |
CostItemID | String | 1123324 | Unique ID for the Item | No |
PartID | String | 4451458 | autoVHC Part Category | No |
PartNo | String | 1164485447-0090 | Part Number | Yes |
PartDesc | String | FRONT BRAKE DISCS | Part description | Yes |
Stock | String | True | True if in stock | Yes |
PartPrice | String | 45 | Unit price after discount applied | Yes |
Quantity | String | 20 | Number of parts in stock | Yes |
QuantityRequired | String | 2 | Number of parts required | Yes |
LabourTime | String | 0 | Not used | No |
LabourPrice | String | 0 | Not used | No |
FittedPrice | String | 90 | Total price (PartPrice * QuantityRequired) | Yes |
Auth | String | TRUE | Used internally – Not required yet by the DMS, subject to change | No |
Deleted | String | FALSE | Indicates if the part has been deleted | No |
VHCitemID | String | 692554 | ID of the VHCItem (ServiceOrderItemTransferObject) the part has been assigned to | No |
TimeStamp | String | 41164.6294328704 | Time stamp when the record was last changed | No |
SiteCode | String | 909093 | Site Code, used to identify the record to a autovhc account | No |
BinLocation | String | BIN A | Part location in the dealer’s part repostitory | No |
BrandCode | String | BTCS | Used to identify part brand. | No |
Fluid | Boolean | True | Controls a checkbox showing that the part is a fluid | No |
Make | String | Abarth | The would be the make of the vehicle | No |
Brand | String | F | The brand of the vehicle | No |
Sundries | Boolean | True | Controls a checkbox showing that the part is a sundry item | No |
DMSData | String (XML) | <CustomContainer><Custom>Custom Parts Data</Custom><PartInfo>Custom Parts Information</PartInfo></CustomContainer> |
Optional custom data. A single XML entry or a XML container with multiple entries. If there is no data the DMSData entry will not exist in the returned structure. | No |