Skip to content

Tune Integration

Dealer Studio can receive vehicle stock from Tune / Revolution in two ways:

Method How stock is updated
API webhook (recommended) Tune pushes create, update, and delete events to Dealer Studio whenever advertised stock changes
FTP Tune (or another process) uploads inventory files on a schedule for Dealer Studio to import

The API path uses Tune’s Advertising Company API delivery. Tune is the source system. Dealer Studio does not poll Tune for stock.

To set up either method, email support@dealerstudio.com.au with the dealership name. Dealer Studio will provide the webhook endpoint (and any authentication details) or FTP credentials.

Tune / Revolution
→ vehicle created, updated, or deleted (or manual push of advertised stock)
→ Advertising Company API delivery
→ HTTP POST to Dealer Studio stock webhook
→ Dealer Studio creates, updates, or removes the stock record

This replaced an older scheduled batch approach where the full inventory was repeatedly transmitted. POSTs are effectively real-time for create, update, and delete events. Dealers can also manually push all advertised vehicles, or a selected set, at any time from Tune.

Do not reuse a historical webhook URL from another dealership or an old integration thread. Use the endpoint Dealer Studio provides for this dealership.

  1. In Tune / Revolution, create an Advertising Company for Dealer Studio.
  2. Configure that advertising company for API delivery.
  3. Set the Endpoint to the Dealer Studio stock webhook URL supplied by Dealer Studio (includes the dealership identifier as a query parameter).
  4. Configure authentication as advised by Dealer Studio. Early integrations were sometimes tested with username and password left blank; follow the credentials Dealer Studio gives you for a new dealer.
  5. Select or enable the vehicles that should be advertised to the Dealer Studio advertising company.
  6. Perform an initial push of all advertised vehicles so Dealer Studio is seeded with current inventory.
  7. Change a test vehicle in Tune and confirm Dealer Studio receives the update.

Exact menu labels and button sequences in Tune can vary by version. If the Advertising Company or API delivery screens look different from what you expect, ask Tune support or support@dealerstudio.com.au.

Short dealer-facing summary: In Tune, add Dealer Studio as an Advertising Company using API delivery. Dealer Studio provides the API endpoint and any required authentication. Assign the required stock to that advertising company and run an initial full push. Tune then sends subsequent vehicle create, update, and delete events to Dealer Studio automatically.

URL https://dashboard.dealerstudio.com.au/api/v1/webhooks/cars_webhooks?dealership_slug=<dealership_slug>
Method POST
Auth X-API-KEY header with the key Dealer Studio provides
Content-Type application/json
Success 200 OK with body ok

<dealership_slug> is unique per dealership. Dealer Studio includes it in the endpoint URL it issues. Do not strip the query parameter.

Send the API key on every request:

X-API-KEY: <api_key_from_dealer_studio>

If the key is missing or invalid, Dealer Studio responds with 401 Unauthorized and a JSON body such as:

{ "error": "Invalid or unauthorized access" }

Use Revolution’s Advertising API Version 1 payload (VersionNo 1.0). That is the contract Dealer Studio was built against.

Top-level envelope fields:

Field Notes
DealerCode Tune dealer code
TransactionType Typically Internetadvertising
VersionNo 1.0
TimeStamp Event timestamp from Tune
MessageID Optional message identifier
payload Array of vehicle event objects (usually one item per POST)

Each object in payload includes eventId:

eventId Dealer Studio behaviour
CREATE Create the vehicle if it does not already exist for that stock number
UPDATE Update the matching vehicle (matched by stock number within the dealership)
DELETE Mark the matching vehicle as sold / withdrawn from live stock

Images are omitted here for brevity. In production, Tune may include image objects in images (see Images and media).

{
"DealerCode": "example_dealer",
"TransactionType": "Internetadvertising",
"MessageID": "",
"TimeStamp": "2023-11-14T15:51:18.050+11:00",
"VersionNo": "1.0",
"payload": [
{
"eventId": "CREATE",
"globalId": "dbbd93d0-3452-4cb2-b714-d3e0085a726f",
"advertisingCompany": "Dealer Studio",
"stockNo": "0000060",
"advertId": 26324,
"franchiseDesc": "Lexus",
"rangeDesc": "IS200",
"modelCode": "LEX1X75660LE02",
"modelDesc": "2002 Caliente LE Manual",
"regoNo": "CZM12B",
"vinId": "12345678945612352",
"odometer": 98000,
"bodyDesc": "Sedan",
"colourDesc": "White",
"trimDesc": "Black",
"engineType": "2.0L Petrol",
"engineCapacity": "2",
"fuelType": "Petrol",
"transmissionType": "Automatic",
"optionsList": "ABS AC LEATHER PS PW SUN",
"advertisingDescription": "<p>Dealer comments HTML from Tune</p>",
"stockLocation": "111",
"special": "no",
"nvicCode": "",
"driveAwayPrice": "29990",
"totalSale": "27990",
"regoExpiryDate": "2020-03-17",
"buildYear": 2000,
"buildMonth": 2,
"complianceDateYear": 2018,
"complianceDateMonth": 2,
"firstRegYear": 2000,
"firstRegMonth": 2,
"certifiedUsedVehFlag": "yes",
"engineNo": "9876548",
"vehStatus": "10",
"NUD": "U",
"images": [],
"url": []
}
]
}
Tune field Dealer Studio use
stockNo Stock number (primary match key)
vinId VIN
franchiseDesc Make
rangeDesc Model
modelDesc Description / tune text
modelCode Model code
NUD Vehicle type: N = new, D = demo, U = used
vehStatus Stock status (see below)
odometer Odometer
bodyDesc Body
colourDesc Colour
trimDesc Interior colour / trim
transmissionType Transmission
fuelType Fuel
engineType / engineCapacity / engineNo Engine details
driveAwayPrice / totalSale Drive-away and EGC-style pricing
advertisingDescription Dealer comments (HTML cleaned on import)
optionsList Features (space-separated codes/names)
stockLocation Location code (matched to a Dealer Studio location when possible)
nvicCode NVIC / Glasses
regoNo / regoExpiryDate Registration
buildYear / buildMonth Build date
complianceDateYear / complianceDateMonth Compliance date
certifiedUsedVehFlag Certified used (yes / otherwise)
images Vehicle photos (see below)
Tune vehStatus Dealer Studio
10 In stock (for sale)
15, 20, 80, 90 Treated as sold / not live stock

Other status codes are ignored for status mapping.

Tune’s Advertising API can send uploaded vehicle photos inside the payload as BLOB / base64 image data (imageData on each image object), rather than only hosted image URLs. That produces large webhook requests. Dealer Studio accepts and processes those payloads.

Tune’s Other Attachments / url fields are aimed at externally hosted content (for example video) and are not a drop-in replacement for Tune-hosted vehicle photos in the correspondence that shaped this integration.

Image objects typically include:

Field Notes
eventId CREATE, UPDATE, or DELETE for that image
imageId / imageID Stable image identifier from Tune
imageSequence Display order
imageType e.g. MAIN
imageData Base64 image bytes when Tune embeds the photo

After vehicles are flowing, open a vehicle in Dealer Studio and use Api Logs in the vehicle actions menu to inspect received payloads for that stock item.

  1. Email support@dealerstudio.com.au for the dealership-specific webhook URL and API key.
  2. Create the Dealer Studio Advertising Company in Tune with API delivery pointing at that URL.
  3. Assign stock and run an initial full push of advertised vehicles.
  4. Update a test vehicle in Tune and confirm it appears or updates in Dealer Studio.
  5. Spot-check stock number, prices, location, status, and photos on a sample of new, demo, and used vehicles.

Request FTP credentials from Dealer Studio (server address, username, and password). Credentials are unique per dealership.

Configure feeds at a frequency that suits the dealership. Every 30 minutes is a reasonable default.

Prefer the API webhook when Tune Advertising Company API delivery is available, so stock changes arrive without waiting for the next FTP cycle.

For endpoint URLs, API keys, FTP credentials, or import troubleshooting, contact support@dealerstudio.com.au.