Dealer Studio Inventory ingestion
If you are using Dealer Studio Loopit has an intergration that allows inventory to be sent to Loopit with pricing. This reduces any duplicate efforts managing your fleet. The integration will add and remove fleet.
This document outlines the technical and support requirements for integrating with the Loopit platform to automatically create assets via webhooks.
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 inventory to Loopit an oAuth client must be configured. To obtain the details please reach out to Loopit support.
Field information
adapter
string (required)
Must be 'dealer-studio'; route param, required for integration.
Type
string (required)
Asset type.
Identifier
numeric (required)
Asset identifier.
SaleStatus
string (required)
Sale status.
SaleType
string (required)
Sale type.
LastModifiedUtc
date (required)
Last modified date (UTC).
CreatedUtc
date (required)
Created date (UTC).
Slug
string (nullable)
Optional slug.
ListingType
string (nullable)
Optional listing type.
Description
string (nullable)
Optional description.
Registration
array (nullable)
Registration details.
Registration.Number
string (nullable)
Registration number.
Registration.ExpiresUtc
date (nullable)
Registration expiry date (UTC).
Identification
array (nullable)
Identification details.
Identification.*.Type
string (nullable)
Identification type.
Identification.*.Value
string (nullable)
Identification value.
Colours
array (nullable)
Colour details.
Colours.*.Location
string (nullable)
Colour location.
Colours.*.Name
string (nullable)
Colour name.
OdometerReadings
array (nullable)
Odometer readings.
OdometerReadings.*.Type
string (nullable)
Odometer reading type.
OdometerReadings.*.Value
numeric (nullable)
Odometer reading value.
OdometerReadings.*.UnitOfMeasure
string (nullable)
Odometer unit of measure.
Seller
array (nullable)
Seller details.
Seller.Identifier
numeric (nullable)
Seller identifier.
Seller.LocationName
string (nullable)
Seller location name.
Seller.Addresses
array (nullable)
Seller addresses.
Seller.Addresses.*.State
string (nullable)
Seller address state.
Specification
array (nullable)
Asset specification.
Specification.Identifier
integer (nullable)
Specification identifier.
Specification.Title
string (nullable)
Specification title.
Specification.Make
string (nullable)
Specification make.
Specification.Model
string (nullable)
Specification model.
Specification.Series
string (nullable)
Specification series.
Specification.SpecificationCode
string (nullable)
Specification code.
Specification.ReleaseDate
array (nullable)
Specification release date.
Specification.ReleaseDate.Year
integer (nullable)
Release year.
Specification.ReleaseDate.Month
integer (nullable)
Release month.
Specification.Attributes
array (nullable)
Specification attributes.
Specification.Attributes.*.Name
string (nullable)
Attribute name.
Specification.Attributes.*.Value
mixed (nullable)
Attribute value.
Media
array (nullable)
Media details.
Media.Photos
array (nullable)
Media photos.
Media.Photos.*.Url
string (nullable)
Photo URL.
ComplianceDate
array (nullable)
Compliance date.
ComplianceDate.Month
string (nullable)
Compliance month.
ComplianceDate.Year
integer (nullable)
Compliance year.
BuildDate
array (nullable)
Build date.
BuildDate.Month
string (nullable)
Build month.
BuildDate.Year
integer (nullable)
Build year.
PriceList
array (nullable)
Price list.
PriceList.*.Type
string (nullable)
Price type.
PriceList.*.Currency
string (nullable)
Price currency.
PriceList.*.Amount
numeric (nullable)
Price amount.
SubscriptionPricing
array (nullable)
Subscription pricing.
SubscriptionPricing.*.Name
string (nullable)
Subscription name.
SubscriptionPricing.*.DailyPrice
numeric (nullable)
Daily price.
SubscriptionPricing.*.WeeklyPrice
numeric (nullable)
Weekly price.
SubscriptionPricing.*.FortnightlyPrice
numeric (nullable)
Fortnightly price.
SubscriptionPricing.*.MonthlyPrice
numeric (nullable)
Monthly price.
SubscriptionPricing.*.TaxIncluded
boolean (nullable)
Whether tax is included.
Validation rules
For a webhook to be processed it must map to a valid workspace within Loopit. This is controlled by the Seller.Identifier data point. If this is not provided or is not configured within Loopit the webhook will not be processed.
For an asset to be created
A valid mapping from Dealer studio webhooks to an account in Loopit
All required fields provided
For pricing to be automatically updated in Loopit per package;
API pricing support turned on
A single fee for vehicle and subscription (does not support subscription fee + vehicle fee on seperate lines)
Valid package IDs supplied
SubscriptionPricing data in payload to be formatted correctly
Example payload
{
"Type": "CAR",
"Identifier": 1234,
"ListingType": "new",
"SaleStatus": "For Sale",
"SaleType": "Retail",
"Description": "",
"Slug": "new-white-2025-chery-tiggo-4-pro",
"Registration": { "Number": "", "ExpiresUtc": null },
"Identification": [
{ "Type": "StockNumber", "Value": "XXXXX" },
{ "Type": "VIN", "Value": "XXXXX" }
],
"Colours": [
{ "Location": "Exterior", "Name": "White" },
{ "Location": "Interior", "Name": "Black" }
],
"OdometerReadings": [
{ "Type": "", "Value": 0.0, "UnitOfMeasure": "KILOMETER" },
{ "Type": "", "Value": 0.0, "UnitOfMeasure": "KM" }
],
"Seller": {
"Identifier": 123,
"Type": "Dealer",
"Name": "XXXXX",
"ExternalIdentifiers": [],
"LocationCode": null,
"LocationName": "XXXXX",
"LocationId": 123,
"Logo": null,
"DealerLicenceNumber": "",
"DealershipGroupNames": [],
"Addresses": [
{
"Line1": "123 Road",
"Suburb": "",
"State": "NSW",
"Postcode": "1234",
}
],
},
"Specification": {
"Identifier": 1302410,
"SpecificationCode": null,
"description": null,
"CountryCode": "AU",
"Make": "Chery",
"Model": "Tiggo 4 Pro",
"Series": "",
"ReleaseDate": { "Year": 2025 },
"Title": "2025 Chery Tiggo 4 Pro Urban",
"Attributes": [
{ "Name": "Badge", "Value": "Urban" },
{ "Name": "EngineType", "Value": "Piston" },
{ "Name": "EngineSize", "Value": 1498 },
{ "Name": "EngineSizeLitres", "Value": 1.5 },
{ "Name": "Cylinders", "Value": 4 },
{ "Name": "FuelType", "Value": "Petrol" },
{ "Name": "Transmission", "Value": "Automatic" },
{ "Name": "Gears", "Value": 9 },
{ "Name": "Drive", "Value": "Front Wheel Drive" },
{ "Name": "BodyStyle", "Value": "SUV" },
{ "Name": "Doors", "Value": 5 },
{ "Name": "Seats", "Value": 5 },
{ "Name": "Views", "Value": 0 }
]
},
"Features": [],
"Media": { "Photos": [] },
"ComplianceDate": { "Month": null, "Year": null },
"BuildDate": { "Month": null, "Year": null },
"Warranty": {},
"PriceList": [{ "Type": "EGC", "Currency": "AUD", "Amount": 23990 }],
"Certification": { "Certified": false, "CertificationType": null },
"LastModifiedUtc": "2025-10-28T05:43:22.713Z",
"CreatedUtc": "2025-10-28T01:21:17.892Z",
"VendorData": [],
"Destinations": [],
"SubscriptionPricing": [
{
"Name": "Value",
"WeeklyPrice": 189.0,
"MonthlyPrice": 819.0,
"FortnightlyPrice": 378.0,
"DailyPrice": 26.9
},
{
"Name": "Starter",
"WeeklyPrice": 139.0,
"MonthlyPrice": 602.3,
"FortnightlyPrice": 278.0,
"DailyPrice": 19.8
},
{
"Name": "Premium",
"WeeklyPrice": 239.0,
"MonthlyPrice": 1035.7,
"FortnightlyPrice": 478.0,
"DailyPrice": 34.0
}
]
}
Response codes
Loopit will always ingest a webhook from Dealer Studio and respond with a 200 code. Ingestion of the webhook does not guarantee inventory will be created if there are data/validation issues.
Pricing support
For pricing to be accepted in you must have a single fee for the vehicle and package price e.g. Base Fee. Dealer Studio currently supports updating 3 packages automatically as part of the integration, if you have more packages pricing will need to be set manually for additional packages. This feature leverages Loopit's price override feature per package.
To enable this the 3 package IDs will need to be shared with Dealer Studio, these can be obtained from the URL address bar when viewing a package.
Support issues
If issues arise (e.g. inventory not appearing in Loopit), both support teams must be notified.
Please email both support teams:
Email subject: [Inventory Integration] Issue - Inventory not appearing in Loopit
Include:
Example inventory reference ID, VIN, rego 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