Create or Update Listing
Upsert a vehicle listing by external reference. Creates a new listing if it doesn’t exist, or updates the existing one.
Requires the write:listings scope. Contact support to enable write access.
PUT is a full replacement The PUT operation replaces the entire listing. Fields not included in your request will be set to null. Always send ALL fields with every request, even when updating an existing listing.
Path Parameters
Your unique reference for this listing (max 64 characters)
Request Body
Dealer profile UUID. Required if dealerLocationCode is not provided.
Location code. Required if dealerProfileId is not provided.
Listing status: active, pending, sold, or draft
Detailed description (max 15,000 characters)
Price in EUR. Required when status is active or pending.
Vehicle brand (e.g., “Opel”, “Volkswagen”)
Vehicle model (e.g., “Corsa”, “Golf”)
Build year (1900 - current year + 1)
Fuel type: petrol, diesel, electric, hybrid, lpg, cng, other
Transmission: manual, automatic, semi-automatic, other
Body type: hatchback, sedan, suv, wagon, convertible, van, coupe, other
Model variant/trim level (e.g., “GT Line”, “Signature”)
Engine description (e.g., “1.6 TDI 115pk”, “2.0 TSI”)
Drive type: FWD, RWD, AWD, 4WD, 4x4
Interior material: Leder, Stof, Alcantara, Kunstleder, Leder/Stof, Leder/Alcantara
Number of previous owners
Service history available
Warranty duration in months
CO2 measurement standard: WLTP or NEDC
Euro emission class (e.g., “Euro 6d”)
Paint type: Metallic, Parelmoer, Mat, Uni
Fuel consumption in L/100km
Vehicle condition: new, used, demo, oldtimer, damaged
VAT regime: margin or btw
First registration date (format: YYYY-MM)
Vehicle identification number
Belgian postal code. Required for active listings.
City name. Required for active listings.
Province name. Required for active listings.
Array of feature objects with category and name
Array of image URLs or objects with url and position. Images are automatically mirrored to Okasie storage.
Response
true if newly created, false if updated
Optional warnings (e.g., skipped images)
curl -X PUT "https://www.okasie.be/api/external/v1/listings/MY-REF-001" \
-H "Authorization: Bearer YOUR_API_SECRET" \
-H "Content-Type: application/json" \
-d '{
"dealerProfileId": "84118503-030b-45f3-a867-c77d54d00b4c",
"status": "active",
"title": "Opel Corsa 1.2 Turbo GS Line",
"description": "Compact city car in excellent condition",
"price": 19995,
"brand": "Opel",
"model": "Corsa",
"variant": "GS Line",
"year": 2021,
"mileage": 25000,
"fuelType": "petrol",
"transmission": "automatic",
"driveType": "FWD",
"gears": 6,
"bodyType": "hatchback",
"engine": "1.2 Turbo 100pk",
"color": "Blauw",
"interiorColor": "Zwart",
"interiorMaterial": "Stof",
"doors": 5,
"seats": 5,
"powerKw": 74,
"weight": 1180,
"previousOwners": 1,
"serviceHistory": true,
"warranty": true,
"warrantyMonths": 12,
"co2Emission": 118,
"co2Type": "WLTP",
"emissionClass": "Euro 6d",
"paintType": "Metallic",
"fuelConsumption": 5.1,
"condition": "used",
"vehicleType": "margin",
"firstRegistration": "2021-03",
"postalCode": "9000",
"city": "Gent",
"province": "Oost-Vlaanderen",
"features": [
{"category": "comfort", "name": "Airconditioning"},
{"category": "safety", "name": "ABS"}
],
"images": [
"https://partner.example/car1.jpg",
{"url": "https://partner.example/car2.jpg", "position": 1}
]
}'
Success (201 Created)
Updated (200 OK)
With Warnings
{
"data" : {
"listingId" : "0c52cae7-bcaa-4b37-be0d-1b78c92c5225" ,
"externalReference" : "MY-REF-001" ,
"status" : "active" ,
"created" : true
}
}
Error Responses
Status Code Description 400 INVALID_TITLETitle is required 400 INVALID_PRICEPrice required for active listings 400 INVALID_LOCATIONpostalCode, city, and province required 400 INVALID_PROFILEdealerProfileId or dealerLocationCode required 403 PROFILE_FORBIDDENNo access to requested profile 422 VALIDATION_FAILEDPayload validation failed
Enum Values Reference
driveType
Value Description FWDFront-wheel drive (Voorwielaandrijving) RWDRear-wheel drive (Achterwielaandrijving) AWDAll-wheel drive (Vierwielaandrijving) 4WDFour-wheel drive 4x4Four-wheel drive
interiorMaterial
Value Description LederLeather StofFabric AlcantaraAlcantara KunstlederSynthetic leather Leder/StofLeather/Fabric combination Leder/AlcantaraLeather/Alcantara combination
paintType
Value Description MetallicMetallic paint ParelmoerPearl paint MatMatte paint UniSolid/plain paint
co2Type
Value Description WLTPWorldwide Harmonised Light Vehicle Test Procedure NEDCNew European Driving Cycle (legacy)
condition
Value Description newNew vehicle usedUsed vehicle demoDemo/showroom vehicle oldtimerClassic/vintage vehicle damagedDamaged vehicle
vehicleType
Value Description marginMargin scheme (no VAT deductible) btwVAT scheme (VAT deductible)