Dealer Studio Leads ingestion
If you are using a Dealer Studio website, Loopit is capable of creating a person/lead and a booking via a webhook integration method.
This document outlines the technical and support requirements for integrating with the Loopit platform to automatically create leads and/or bookings via webhooks. The purpose of this integration is to ensure that leads generated from the partner system are seamlessly delivered into Loopit's platform with complete and accurate data.
Webhook delivery
Dealer Studio will send data to the following endpoint;
Endpoint URL (Production): Contact support Request Method: POST Content Type: application/json
Authorisation
To enable sending leads to Loopit an oAuth client must be configured. To obtain the details please reach out to Loopit support.
Field information
dealership
Object
dealership.id
number
356
prospect
Object
prospect.first_name
string
prospect.middle_name
string
prospect.last_name
string
prospect.email
string, required
prospect.dob
string in format dd/mm/yyyy
01/04/2000
prospect.mobile_phone
string
0412 123 123
prospect.opt_in_to_marketing
boolean
true
prospect.address
Object
prospect.address.street
string
Elizabeth St
prospect.address.city
string
Sydney
prospect.address.state
string
NSW (abbreviated version must be provided)
prospect.address.country
string
Australia
prospect.address.postcode
string | number
2000
additional_details
Object
additional_details.license_expiry
string in format dd/mm/yyyy
01/04/2000
additional_details.license_dob
string in format dd/mm/yyyy
01/04/2000
additional_details.license_number
string | number
12345678
additional_details.license_card_number
string | number
12345678
additional_details.license_state
string
NSW (abbreviated version must be provided)
additional_details.passport_country
string
Australia OR 2 code one of the following; au,us,fr,de,uk,ca
additional_details.passport_expiry
string in format dd/mm/yyyy
01/04/2000
additional_details.passport_dob
string in format dd/mm/yyyy
01/04/2000
additional_details.passport_number
string
PB12345678
additional_details.subscription_plan
string
Premium
item
Object
item.vin
string
XXX1234551232
item.stock_number
string
DDF445
location
Object
location.location_name
string
Dealer A
Validation rules
For a webhook to be processed it must map to a valid workspace within Loopit. This is controlled by the dealership.id data point. If this is not provided or is not configured within Loopit the webhook will not be processed.
For a person to be created in Loopit:
A valid email address
If DOB provided a correctly formatted DOB
For a booking to be created the following conditions must be met:
item.vin OR item.stock_number
Asset must be found
If not provided no booking will be created, the person will still be created in Loopit
Asset must not be archived
location.location_name
If no matching location name is found or not provided Loopit will take the first bookable location from the asset
A location must be found
additional_details.subscription_plan
A valid package name that exactly matches a package name in Loopit
A package must be found
For an address of the lead to be stored against the person in Loopit the following must be provided;
prospect.address.street
prospect.address.city
prospect.address.state
prospect.address.postcode
prospect.address.country
For a driver licence to be stored against the person in Loopit the following must be provided:
additional_details.license_number
additional_details.license_expiry
additional_details.license_dob
For a passport to be stored against the person in Loopit the following must be provided:
additional_details.passport_number
additional_details.passport_country
us, uk, fr, au, de, ca - OR a full country name provided
additional_details.passport_expiry
additional_details.passport_dob
If a partially complete form is submitted e.g. the lead only contains email and name a person will be created. If another webhook is received with further information Loopit will update the record, matching on email, and insert any additional information.
Example payload
{
"id": 1759346,
"lead_cluster_id": 1091776,
"marketing_source": "Unknown",
"utm_campaign": null,
"provider": "Dealer Studio",
"source": "Website",
"category": "Subscription Enquiry",
"location": {
"street": "Elizabeth Street",
"city": "Sydney",
"state": "NSW",
"postcode": 2000,
"location_name": "Dealer A"
},
"prospect": {
"title": null,
"first_name": "John",
"middle_name": "Middle",
"last_name": "Smith",
"email": "[email protected]",
"postcode": 6050,
"mobile_phone": "0403 123 123",
"address": {
"street": "Elizabeth Street",
"city": "Sydney",
"state": "NSW",
"state_long": "New South Wales",
"postcode": 2000,
"country": "Australia"
},
"dob": null,
"opt_in_to_marketing": false,
},
"comments": null,
"created": "2025-10-03T06:10:08.144Z",
"item": {
"type": "car",
"car_type": "used",
"id": 230767,
"vin": "JSAGJB74V00202326",
"status": "In stock",
"colour": "White",
"body_type": "Hardtop",
"stock_number": "7021602",
"build_date": null,
"transmission": "Automatic",
"interior_color": "",
"make": "Suzuki",
"model": "Jimny",
"badge": "GLX",
"year": 2023,
"rego": "123456",
"price": 39500.0,
"engine_size": 1462,
"km": 15000.0,
"series": "GJ",
"comments": "",
"url": "https://www.website.com.au/cars/xxx",
"spin_code": null,
"third_party_integrations": [
{ "service": "Loopit", "external_id": "59889" }
],
"deposit": null
},
"lead_events": [],
"additional_details": {
"first_name": "John",
"surname": "Smith",
"marketing_opt_in": "true",
"subpremise": 12,
"street_number": 123,
"suburb": "Sydney",
"country": "Australia",
"lead_status": "Complete",
"subscription_plan": "Premium",
"license_state": "NSW",
"license_card_number": 9999999,
"license_number": 1231231231,
"license_dob": "10/10/1980",
"license_expiry": "10/10/2029",
"car_image": null,
"vin": "XXXXXXXXXX",
"subscription_price": 299,
"minimum_days": 7,
"km_included": 750,
"join_fee": "$0",
"identification_type": "drivers-license",
"lead_id": 1759346
},
"subscription_plan": {
"subscription_id": 4,
"name": "Premium"
},
"updated_at": "2025-10-03T06:10:22.097Z",
"subcategory": "unset",
"dealership": { "id": 356, "name": "Dealer A", "slug": "dealer-a" },
"website": {
"id": 794,
"name": "Dealer A",
"url": "https://www.website.com.au",
"slug": "dealera"
},
"lead_status_option": { "id": 995, "name": "new", "status_type": "new" }
}
Response codes
Loopit will always ingest a webhook from Dealer Studio and respond with a 200 code. Ingestion of the webhook does not guarantee a lead/booking will be created if there are data/validation issues.
Support issues
If issues arise (e.g. leads not appearing in Loopit), both support teams must be notified.
Please email both support teams:
Email subject: [Lead Integration] Issue - Leads not appearing in Loopit
Include:
Example lead reference ID and email from Dealer Studio
Approximate date/time
Change management
Any schema changes must be communicated to both technical teams at least two weeks in advance. Loopit will maintain backward compatibility for at least 30 days, maximum 90 days, following any schema update.
Version history
1
1st October 2025
N/A
Last updated