Entity Services¶
Overview¶
Xchecker can be configures with multiple indexes, normally vehicle indexes but can be engine or cycles. This API will expose all configured indexes (those configured to be loaded to the IDL) and during the conversion from Xchecker to IDL process will allocate up to seven primary ordinal keys used for indexing and retrieval. The rest of the vehicle details will be stores as secondary items.
The items in these indexes are referred to as entities by this API and are referenced in the IDL by the primary ordinal keys. Currently, we allow up to 7 primary ordinals that are configured by Elcome in consultation with the Client, such as:
- Make
- Model
- Year
- Body
- Engine
- Series
If you have any special requirements or wish to use different fields for the primary entity search keys please contact your Elcome representative.
Ordinals can be defined as composite, so that various fields can be formatted together and the resulting composite values used. This is particularly useful when dealing with dates or when combining fields for simpler cascading vehicle selection.
Cascade and Sparse¶
The cascade method calls require that you step through the primary ordinals providing a growing list of previous selections. It is intended that these will mainly be used in cascading drop downs for manual vehicle selection.
The sparse calls allow you to miss primary ordinals for cases where you may want to do a vehicle lookup such as all Audi 5.0 litre cars.
Summary List¶
-
Returns a list of the indexes originally held in XChecker along with the key primary ordinal fields and associated secondary attributes. There may be multiple indexes configured, it is your responsibility to select the correct one for your needs. You must use the indexReference value returned by this call in all subsequent entity methods.
-
v1/entity/getprimaryentityvaluesbycascadingprimaries
This method is for when you are populating cascading drop down boxes for manual entity/vehicle selection. You step through each of the primary ordinals getting unique values and using the selected value in the next call to this method with the next primary ordinal.
-
v1/entity/getprimaryentityvaluesbycascadingapplicatedprimaries
This method is for when you are populating cascading drop down boxes for manual entity/vehicle selection. You step through each of the primary ordinals getting unique values and using the selected value in the next call to this method with the next primary ordinal. This method only returns entity values if they are found to be applicated.
-
v1/entity/getprimaryentityvaluesbysparseprimaries
This method returns distinct lists of primary ordinal values allowing for missing values. It would be used when making ad-hoc queries for entities/vehicles.
-
v1/entity/getsecondaryentityvaluesbysparseprimaries
This method returns distinct lists of secondary values given a list of primary values. It would be used when selection needs to be made using fields that are not part of the primary lookup system.
-
v1/entity/getentitiesbycascadingprimaries
This method is for when you are retrieving full entity/vehicle details following a cascading manual selection process.
-
v1/entity/getentitiesbycascadingapplicatedprimaries
This method is for when you are retrieving full entity/vehicle details following a cascading manual selection process. It will only retrieve applicated entities.
-
v1/entity/getentitiesbysparseprimaries
This method is for when you are retrieving full entity/vehicle details following a sparse manual selection process.
-
v1/entity/getentitiesbyexternalreferences
This method returns full entity/vehicle details given a list of external references. These external references will depend upon the index selected.
-
v2/entity/getentitiesbyexternalreferences
This method returns full entity/vehicle details given a list of external references. These external references will depend upon the index selected.
It differs from v1 by allowing '*' to be applied to the end of the external reference to enable partial (startswith) search.
-
v1/entity/getentitiesbyinternalreferences
This method returns full entity/vehicle details given a list of internal references.
-
v1/entity/getentitiesbypartnumber
Returns a full list of entities/vehicles where the given part number is used.
-
v1/entity/getentitiesbysingleprimary
Returns a full list of entities/vehicles where the given single primary and primary value are given.
-
Returns the VRM lookup details.
-
Returns the buyers guide given a product and index reference.
This method requires advanced search to be configured. Please contact your local Elcome representative for more details.
getEntityIndexes¶
Method URL¶
/v1/entity/getentityindexes
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class simpleRequest
{
public baseRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
}
}
Response Structure¶
public class entityIndexResponse
{
public baseResponse baseResponse { get; set; }
public List<index> indexes{ get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
getPrimaryEntityValuesByCascadingPrimaries¶
Method URL¶
/v1/entity/getprimaryentityvaluesbycascadingprimaries
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class manualEntityLookupRequestByPrimaries
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public long requestedPrimary { get; set; }
public List<string> primaryValues { get; set; }
public filterRequest filterRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class filterRequest
{
public List<string> brands { get; set; }
public List<long> productTypeReferences { get; set; }
public List<long> categoryReferences { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
requestedPrimary | no | The primary ordinal you want values for (from getEntityIndexes) |
primaryValues | no | The previous primary selections |
filterRequest | null (for future use) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"requestedPrimary":2,
"primaryValues": ["AUDI","","","","",""],
"filterRequest":null
}
Response Structure¶
public class manualEntityValueResponse
{
public baseResponse baseResponse { get; set; }
public List<string> response{ get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
getPrimaryEntityValuesByCascadingApplicatedPrimaries¶
Method URL¶
/v1/entity/getprimaryentityvaluesbycascadingapplicatedprimaries
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class manualEntityLookupRequestByPrimaries
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public long requestedPrimary { get; set; }
public List<string> primaryValues { get; set; }
public filterRequest filterRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class filterRequest
{
public List<string> brands { get; set; }
public List<long> productTypeReferences { get; set; }
public List<long> categoryReferences { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
requestedPrimary | no | The primary ordinal you want values for (from getEntityIndexes) |
primaryValues | no | The previous primary selections |
filterRequest | null (for future use) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"requestedPrimary":2,
"primaryValues": ["AUDI","","","","",""],
"filterRequest":null
}
Response Structure¶
public class manualEntityValueResponse
{
public baseResponse baseResponse { get; set; }
public List<string> response{ get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
getPrimaryEntityValuesBySparsePrimaries¶
Method URL¶
/v1/entity/getprimaryentityvaluesbysparseprimaries
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class manualEntityLookupRequestByPrimaries
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public long requestedPrimary { get; set; }
public List<string> primaryValues { get; set; }
public filterRequest filterRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class filterRequest
{
public List<string> brands { get; set; }
public List<long> productTypeReferences { get; set; }
public List<long> categoryReferences { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
requestedPrimary | no | The primary ordinal you want values for (from getEntityIndexes) |
primaryValues | no | The previous primary selections |
filterRequest | yes | null (for future use) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"requestedPrimary":3,
"primaryValues": ["AUDI","","","","",""],
"filterRequest":null
}
Response Structure¶
public class manualEntityValueResponse
{
public baseResponse baseResponse { get; set; }
public List<string> response{ get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
getSecondaryEntityValuesBySparsePrimaries¶
Method URL¶
/v1/entity/getsecondaryentityvaluesbysparseprimaries
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class manualEntitySecondaryLookupRequestByPrimaries
{
public baseRequest baseRequest { get; set; }
public int indexReference { get; set; }
public int requestedSecondary { get; set; }
public List<string> primaryValues { get; set; }
public filterRequest filterRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class filterRequest
{
public List<string> brands { get; set; }
public List<long> productTypeReferences { get; set; }
public List<long> categoryReferences { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
requestedSecondary | no | The secondary ordinal you want values for (from getEntityIndexes) |
primaryValues | no | The previous primary selections |
filterRequest | yes | null (for future use) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"requestedSecondary":19,
"primaryValues": ["AUDI","A4 (8D, B5) (94-01)","","","",""],
"filterRequest":null
}
Response Structure¶
public class manualEntityValueResponse
{
public baseResponse baseResponse { get; set; }
public List<string> response{ get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
getEntitiesByCascadingPrimaries¶
Method URL¶
/v1/entity/getentitiesbycascadingprimaries
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class manualEntityLookupRequestByPrimaries
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public long requestedPrimary { get; set; }
public List<string> primaryValues { get; set; }
public filterRequest filterRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class filterRequest
{
public List<string> brands { get; set; }
public List<long> productTypeReferences { get; set; }
public List<long> categoryReferences { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
requestedPrimary | no | The primary ordinal you want entities for (from getEntityIndexes) |
primaryValues | no | The previous primary selections |
filterRequest | yes | null (for future use) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"requestedPrimary":3,
"primaryValues": ["AUDI","A4 (8D, B5) (94-01)","1.9","","",""],
"filterRequest":null
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string provider { get; set; }
public long internalReference { get; set; }
public string externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
getEntitiesByCascadingApplicatedPrimaries¶
Method URL¶
/v1/entity/getentitiesbycascadingapplicatedprimaries
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class manualEntityLookupRequestByPrimaries
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public long requestedPrimary { get; set; }
public List<string> primaryValues { get; set; }
public filterRequest filterRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class filterRequest
{
public List<string> brands { get; set; }
public List<long> productTypeReferences { get; set; }
public List<long> categoryReferences { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
requestedPrimary | no | The primary ordinal you want entities for (from getEntityIndexes) |
primaryValues | no | The previous primary selections |
filterRequest | yes | null (for future use) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"requestedPrimary":3,
"primaryValues": ["AUDI","A4 (8D, B5) (94-01)","1.9","","",""],
"filterRequest":null
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string provider { get; set; }
public long internalReference { get; set; }
public string externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
getEntitiesBySparsePrimaries¶
Method URL¶
/v1/entity/getentitiesbysparseprimaries
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class manualEntityLookupRequestByPrimaries
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public long requestedPrimary { get; set; }
public List<string> primaryValues { get; set; }
public filterRequest filterRequest { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class filterRequest
{
public List<string> brands { get; set; }
public List<long> productTypeReferences { get; set; }
public List<long> categoryReferences { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
requestedPrimary | no | The primary ordinal you want entities for (from getEntityIndexes) |
primaryValues | no | The previous primary selections |
filterRequest | yes | null (for future use) |
Body Example (Get all 5.0 Litre Audi)¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"requestedPrimary":3,
"primaryValues": ["AUDI","","5.0","","",""],
"filterRequest":null
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string provider { get; set; }
public long internalReference { get; set; }
public string externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
getEntitiesByExternalReferences¶
Method URL¶
/v1/entity/getentitiesbyexternalreferences
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class referencedEntityLookupRequestString
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public List<nameValuePairString> references { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class nameValuePairString
{
public string name { get; set; }
public string value { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
references | no | List of external references (dependant upon index) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"references": [{"name":"extid", "value": "11597"}]
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string provider { get; set; }
public long internalReference { get; set; }
public string externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
v2 getEntitiesByExternalReferences¶
Method URL¶
/v2/entity/getentitiesbyexternalreferences
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class referencedEntityLookupRequestString
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public List<nameValuePairString> references { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class nameValuePairString
{
public string name { get; set; }
public string value { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
references | no | List of external references (allows '*' on the end of externalID for partial search) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"references": [{"name":"extid", "value": "11597"}]
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string provider { get; set; }
public long internalReference { get; set; }
public string externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
getEntitiesByInternalReferences¶
Method URL¶
/v1/entity/getentitiesbyinternalreferences
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class referencedEntityLookupRequestNumeric
{
[Required]
public baseRequest baseRequest { get; set; }
[Required]
public long indexReference { get; set; }
[Required]
public List<nameValuePairNumeric> references { get; set; } = new List<nameValuePairNumeric>();
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
public class nameValuePairNumeric
{
public string name { get; set; }
public long value { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
references | no | List of internal references (unique to Elcome) |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"references": [{"name":"elcome", "value": 8779}]
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string provider { get; set; }
public long internalReference { get; set; }
public string externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
getEntitiesByPartNumber¶
Method URL¶
/v1/entity/getentitiesbypartnumber
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class partNumberEntityLookupRequest
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public string partNumber { get; set; }
public string brand { get; set; }
public long productTypeReference { get; set; }
public string searchOption { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
partNumber | no | Full or partial name of a part number |
productTypeReference | yes | 0 if not required otherwise the reference to a ProductType |
brand | yes | Blank string if not required otherwise lower case brand name |
searchOption | no | one of "exact", "startswith" or "contains" to apply to part number |
Body Example¶
{
"baseRequest":{
"requestReference":123456,
"requestPostedTime":"2012-04-23T18:25:43.511Z",
"system":"ecat"
},
"indexReference":1,
"partNumber": "PLUG1",
"productTypeReference": 0,
"brand": "mybrand",
"searchOption": "exact"
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string provider { get; set; }
public long internalReference { get; set; }
public string externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
getEntitiesBySinglePrimary¶
Method URL¶
/v1/entity/getentitiesbysingleprimary
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
indexReference | no | Reference to the index for which entries will be returned |
Body Example¶
{
"baseRequest": {
"requestReference": 0,
"requestPostedTime": "2018-11-12T17:10:51.917Z",
"system": "ecat"
},
"indexReference": 1,
"requestedPrimary": 6,
"primaryValues": [
"AM2"
],
"filterRequest": {
"brands": [
"string"
],
"productTypeReferences": [
0
],
"categoryReferences": [
0
]
}
}
Response Structure¶
public class entityResponse
{
public baseResponse baseResponse { get; set; }
public List<indexEntity> entities { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string? provider { get; set; }
public long internalReference { get; set; }
public string? externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}
getVehicleByVRM¶
Method URL¶
/v1/entity/getvehiclebyvrm
For VRM to work you must have registered a VRM account with us. Once this has been set up an account name and a user name will be issued to you which you can then use for this method.
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class vrmVehicleLookupRequest
{
public baseRequest baseRequest { get; set; }
public long indexReference { get; set; }
public string account { get; set; }
public string userName { get; set; }
public string vrm { get; set; }
}
public class baseRequest
{
public long requestReference { get; set; }
public DateTime requestPostedTime { get; set; }
public string system { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
Body Example¶
{
"baseRequest": {
"requestReference": 0,
"requestPostedTime": "2018-11-13T10:09:11.574Z",
"system": "string"
},
"indexReference": 1,
"account": "MyAccount",
"userName": "MyUserName",
"vrm": "ABC99ABC"
}
Response Structure¶
public class vrmResponse
{
public baseResponse baseResponse { get; set; }
public Dictionary<string, string> vrmDetails { get; set; }
}
public class baseResponse
{
public baseRequest baseRequest { get; set; }
public TimeSpan responseTime { get; set; }
public long resultCode { get; set; }
public string resultText { get; set; }
}
getBuyersGuide¶
Method URL¶
/v1/entity/getbuyersguide
For this method to work, advanced search must be configured. Please contact your Elcome representative for further details.
Type¶
POST
Consumes¶
application/json
Produces¶
application/json
Body Structure¶
public class BuyersGuideRequest : simpleRequest
{
public long indexReference { get; set; }
public long productReference { get; set; }
}
public class simpleRequest
{
public baseRequest baseRequest { get; set; }
}
Body Fields¶
Field | Optional | Description |
---|---|---|
requestReference | no | You must provide a unique string identifier for this request |
requestPostedTime | no | Enter the time of the request |
system | no | "ecat" must be used to correctly filter allowable products |
Body Example¶
{
"baseRequest": {
"requestReference": 0,
"requestPostedTime": "2021-09-03T09:00:11.193Z",
"system": "ecat"
},
"indexReference": 1,
"productReference": 12345
}
Response Structure¶
public class BuyersGuideResponse : baseResponse
{
public List<indexEntity>? entities { get; set; }
public long depth { get; init; }
public long totalEntites { get; init; }
public string? result { get; set; }
}
public class indexEntity
{
public long indexReference { get; set; }
public string? provider { get; set; }
public long internalReference { get; set; }
public string? externalReference { get; set; }
public Dictionary<string, string> attributes { get; set; }
}