External LMS Service

Integration Guide
Version Date Author Description
1.0 01-07-2013 Contact Online Initial draft
1.1 20-05-2014 Contact Online  
1.2 11-12-2015 Kieran Delahunt (Contact Online) Added create notification and test ride methods
1.3 09-02-2016 Kieran Delahunt (Contact Online) Expanded on and finalised above methods
1.4 27-04-2018 Kieran Delahunt (Contact Online) GDPR requirements for opt in/out
1.5 16-11-2018 Kieran Delahunt (Contact Online) Added methods to list contact for dealership and get individual
1.6 30-11-2018 Kieran Delahunt (Contact Online) Added methods GetDealer(s)
1.7 04-12-2018 Kieran Delahunt (Contact Online) Added methods for product, make, model
1.8 21-03-2019 Kieran Delahunt (Contact Online) Added method to list filtered leads for dealership (GetMatchingLeads)
1.9 21-03-2019 Kieran Delahunt (Contact Online) Added parameters to GetMatchingLeads for date filtering
1.10 24-12-2020 Kieran Delahunt (Contact Online) Added field max lengths

Service locations

URL Environment
Service https://tools.contactonline.co.uk/ExternalLMSService.asmx
https://staging.tools.contactonline.co.uk/ExternalLMSService.asmx
Live
Staging
WSDL https://tools.contactonline.co.uk/ExternalLMSService.asmx?WSDL
https://staging.tools.contactonline.co.uk/ExternalLMSService.asmx?WSDL
Live
Staging

Version

Currently 1.10


Methods

1. Create lead and activity

Allows the user to create a lead and activity in the Contact Online system

Request

Method CreateLeadAndActivity
Action /IntegrationService/CreateLeadAndActivity
Params Values Required Description
LMSAuthentication Authentication object True As below
DealershipID int True
ExternalLead Lead object True As below
ExternalLeadActivity LeadActivity object True As below
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True
ExternalLead
Field Type Required Notes
Title string False Max length 25
Firstname string True Max length 255
Lastname string True Max length 255
Email string True Max length 255
Address1 string False Max length 255
Address2 string False Max length 255
Address3 string False Max length 255
City string False Max length 255
Postcode string False Max length 10
County string False Max length 255
Country string False Max length 255
Mobile string False Max length 20
Home string False Max length 20
Work string False Max length 20
PreferredContactMethod int False
OptIn boolean False
DOB DateTime False
PeronalNotes string False Max length 20
ExternalLeadReference string True Max length 20
AdditionalSource string True Max length 20
CanCall boolean False False by default
CanEmail boolean False False by default
CanPost boolean False False by default
CanSms boolean False False by default
CanCallManufacturer boolean False False by default
CanEmailManufacturer boolean False False by default
CanPostManufacturer boolean False False by default
CanSmsManufacturer boolean False False by default
LeadID int False Set to 0 if new lead
ExternalLeadActivity
Field Type Required Notes
LeadID int True Set to 0 if new lead
LeadActivityID int True Set to 0 if new lead
InterestProductID int True
InterestMakeID int True
InterestModelID int True
InterestDetail string False
InterestIsNew boolean False
InterestIsMotability boolean False
DiaryNotes string False Max length 255

Response

Parameter Value
CreateLeadAndActivityResponse CreateLeadAndActivityResponse object

2. Create lead and activity by external dealership id

Allows the user to create a lead and activity in the Contact Online system

Request

Method CreateLeadAndActivityByExternalDealershipID
Action /IntegrationService/CreateLeadAndActivityByExternalDealershipID
Params Values Required Description
LMSAuthentication Authentication object True As below
ExternalDealershipID string True
ExternalLead Lead object True As below
ExternalLeadActivity LeadActivity object True As below
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True
ExternalLead
Field Type Required Notes
Title string False Max length 25
Firstname string True Max length 255
Lastname string True Max length 255
Email string True Max length 255
Address1 string False Max length 255
Address2 string False Max length 255
Address3 string False Max length 255
City string False Max length 255
Postcode string False Max length 10
County string False Max length 255
Country string False Max length 255
Mobile string False Max length 20
Home string False Max length 20
Work string False Max length 20
PreferredContactMethod int False
OptIn boolean False
DOB DateTime False
PeronalNotes string False Max length 20
ExternalLeadReference string True Max length 20
AdditionalSource string True Max length 20
CanCall boolean False False by default
CanEmail boolean False False by default
CanPost boolean False False by default
CanSms boolean False False by default
CanCallManufacturer boolean False False by default
CanEmailManufacturer boolean False False by default
CanPostManufacturer boolean False False by default
CanSmsManufacturer boolean False False by default
LeadID int False Set to 0 if new lead
ExternalLeadActivity
Field Type Required Notes
LeadID int True Set to 0 if new lead
LeadActivityID int True Set to 0 if new lead
InterestProductID int True
InterestMakeID int True
InterestModelID int True
InterestDetail string False
InterestIsNew boolean False
InterestIsMotability boolean False
DiaryNotes string False Max length 255

Response

Parameter Value
CreateLeadAndActivityResponse CreateLeadAndActivityResponse object

3. Create a test ride booking

Allows the user to create a test ride booking in the Contact Online system

Request

Method CreateTestRideBooking
Action /IntegrationService/CreateTestRideBooking
Params Values Required Description
LMSAuthentication Authentication object True As below
DealershipID string True
Lead Lead object True As below
testRide TestRide object True As below
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True
ExternalLead
Field Type Required Notes
Title string False Max length 25
Firstname string True Max length 255
Lastname string True Max length 255
Email string True Max length 255
Address1 string False Max length 255
Address2 string False Max length 255
Address3 string False Max length 255
City string False Max length 255
Postcode string False Max length 10
County string False Max length 255
Country string False Max length 255
Mobile string False Max length 20
Home string False Max length 20
Work string False Max length 20
PreferredContactMethod int False
OptIn boolean False
DOB DateTime False
PeronalNotes string False Max length 20
ExternalLeadReference string True Max length 20
AdditionalSource string True Max length 20
CanCall boolean False False by default
CanEmail boolean False False by default
CanPost boolean False False by default
CanSms boolean False False by default
CanCallManufacturer boolean False False by default
CanEmailManufacturer boolean False False by default
CanPostManufacturer boolean False False by default
CanSmsManufacturer boolean False False by default
LeadID int False Set to 0 if new lead
ExternalLeadActivity
Field Type Required Notes
LeadID int True Set to 0 if new lead
LeadActivityID int True Set to 0 if new lead
InterestProductID int True
InterestMakeID int True
InterestModelID int True
InterestDetail string False
InterestIsNew boolean False
InterestIsMotability boolean False
DiaryNotes string False Max length 255

Response

Parameter Value
CreateLeadAndActivityResponse CreateLeadAndActivityResponse object

Response

Parameter Value
CreateTestRideBookingResponse CreateTestRideBookingResponse object

4. Create a notification

Allows the user to create a notification in the Contact Online system

Request

Method CreateNotification
Action /IntegrationService/CreateNotification
Params Values Required Description
LMSAuthentication Authentication object True As below
DealershipID string True
Lead Lead object True As below
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True
Lead
Field Type Required Notes
Title string False Max length 25
Firstname string True Max length 255
Lastname string True Max length 255
Email string True Max length 255
Address1 string False Max length 255
Address2 string False Max length 255
Address3 string False Max length 255
City string False Max length 255
Postcode string False Max length 10
County string False Max length 255
Country string False Max length 255
Mobile string False Max length 20
Home string False Max length 20
Work string False Max length 20
PreferredContactMethod int False
OptIn boolean False
DOB DateTime False
PeronalNotes string False Max length 20
ExternalLeadReference string True Max length 20
AdditionalSource string True Max length 20
CanCall boolean False False by default
CanEmail boolean False False by default
CanPost boolean False False by default
CanSms boolean False False by default
CanCallManufacturer boolean False False by default
CanEmailManufacturer boolean False False by default
CanPostManufacturer boolean False False by default
CanSmsManufacturer boolean False False by default
LeadID int False Set to 0 if new lead

Response

Parameter Value
CreateNotificationResponse CreateNotificationResponse object

5. Get Dealership Leads

Allows the dealership to request sold/all leads in the Contact Online system

Request

Method GetLeads
Action /IntegrationService/GetLeads
Params Values Required Description
LMSAuthentication Authentication object True As below
dealerCode int True Obtained from COL
soldLeadsOnly boolean True Sold only / All leads
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True

Response

Parameter Value
GetLeadsResponse GetLeadsResponse object

6. Get Individual Lead

Allows the user to get a lead’s detail from the Contact Online system

Request

Method GetLead
Action /IntegrationService/GetLead
Params Values Required Description
LMSAuthentication Authentication object True As below
dealerCode int True Obtained from COL
CID int True Obtained from /GetLeads
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True

Response

Parameter Value
GetLeadResponse GetLeadResponse object

7. Get Dealers

Allows the user to get authorised dealers from the Contact Online system including name and id

Request

Method GetDealers
Action /IntegrationService/GetDealers
Params Values Required Description
LMSAuthentication Authentication object True As below
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True

Response

Parameter Value
DealerResponse DealerResponse object

8. Get Individual Dealer

Allows the user to get a dealer’s name and id from the Contact Online system

Request

Method GetDealer
Action /IntegrationService/GetDealer
Params Values Required Description
LMSAuthentication Authentication object True As below
IntegrationCode int True Obtained from COL or /GetDealers
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True

Response

Parameter Value
DealerResponse DealerResponse object

9. Get Products

Allows the user to get products and ids from the Contact Online system

Request

Method GetProducts
Action /IntegrationService/GetProducts
Params Values Required Description
LMSAuthentication Authentication object True As below
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True

Response

Parameter Value
ObjectResponse ObjectResponse object

10. Get Makes

Allows the user to get makes and ids from the Contact Online system

Request

Method GetMakes
Action /IntegrationService/GetMakes
Params Values Required Description
LMSAuthentication Authentication object True As below
ProductId int False Pass an Id value from GetProducts or null for all makes
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True

Response

Parameter Value
ObjectResponse ObjectResponse object

11. Get Models

Allows the user to get models and ids from the Contact Online system

Request

Method GetModels
Action /IntegrationService/GetModels
Params Values Required Description
LMSAuthentication Authentication object True As below
MakeId int False Pass an Id value from GetMakes or null for all models
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True

Response

Parameter Value
ObjectResponse ObjectResponse object

12. Get Filtered Dealership Leads

Allows the dealership to request filtered leads in the Contact Online system based on first name, lastname, email and mobile

Request

Method GetMatchingLeads
Action /IntegrationService/GetMatchingLeads
Params Values Required Description
LMSAuthentication Authentication object True As below
dealerCode int True Obtained from COL
searchObject LeadCompact object True As below
Parameter values
LMSAuthentication
Field Type Required Notes
Username string True
password string True
searchObject
Field Type Required Notes
Firstname string False Leave empty or null to match all
Lastname string False Leave empty or null to match all
Email string False Leave empty or null to match all
Mobile string False Leave empty or null to match all
CreationDate DateTime False Leave empty or null to match all
StartDate DateTime False Use in conjunction with EndDate for creation date between
EndDate DateTime False Use in conjunction with StartDate for creation date between

Response

Parameter Value
GetLeadResponse GetLeadResponse object

Status Codes

Status Code Description
100 Authentication not provided
101 Username or password not provided
102 Invalid username or password
103 Lead not active
104 Lead activity not valid
105 Dealership id not provided
106 Dealership diary not set
107 Dealership id not valid
108 Dealership not mapped
109 Lead creation failed
110 Lead creation failed
111 Lead and activity created successfully
112 External LMS lead reference not provided
113 Unhandled exception
114 Lead and activity created but some invalid data ignored
115 Notification created successfully
116 Test ride created successfully
-300 Sales person does not exist
-400 Lead does not exist
-500 Lead does not belong to sales person