Wayke API: bilar till salu på wayke.se med pris i kronor och mätarställning i JSON
API:et söker bland bilarna till salu på wayke.se och lämnar det som står på annonskorten som JSON: modell och utförande, kontantpris i kronor, modellår, mätarställning, ort och bild. Något konto behövs inte. Med `listing` hämtas sedan en enskild bil med växellåda, drivmedel, färg, skick, samtliga bilder och om den finns i lager. Priset är alltid bilens kontantpris. Månadskostnad, privatleasing och finansiering räknas aldrig om till ett pris, och bilar som saknar kontantpris i kronor tas bort ur svaret och räknas i `excluded_non_cash_count`. Det här är inte Waykes integration för bilhandlare: bilar går inte att lägga ut, ändra eller ta bort härifrån, och provkörning eller köp bokas inte heller. API:et hämtar bara det som besökare på wayke.se kan se.
Endpoints
| endpoint | Vad som kommer tillbaka | Obligatoriska |
|---|---|---|
| search | Fritextsökning bland bilarna på wayke.se, till exempel ”volvo v60”. Varje rad har `listing_id` (ett UUID), titel och utförande, kontantpris i SEK, modellår, mätarställning i km (`mileage_km`) och i Waykes egen form (`odometer`), handlarens ort, bild och adress till annonsen. Sidorna 1 och 2 med 24 bilar per sida går att hämta; `max_results` (1–24, standard 12) begränsar antalet rader. | query |
| listing | En bil i sin helhet via `listing_id` från sökningen eller annonsens adress på wayke.se (ett av dem krävs): kontantpris, märke, modell, modellår, mätarställning i km, växellåda, drivmedel, färg, skick, lagerstatus, beskrivning när den finns och alla bilder. | alla valfria |
Varje anrop debiteras i krediter. Misslyckade och blockerade anrop är gratis.
Fungerande exempel
Wayke anger mätarställningen ibland i mil och ibland i kilometer, och det syns i `odometer.unit`. För den första V60:n är det 5 064 mil, som motorn räknar om till 50 640 km (1 mil = 10 km). För V60:n från Växjö anger Wayke direkt 112 000 km, och där är `mileage_km` null i sökningen: motorn fyller fältet bara när källan anger mil. Det gällde 6 av de 12 raderna, och 2 av 24 på sida 2. Hämtar du samma bil med `listing` kommer 112 000 km i `mileage_km`. Fritexten är bred: bland träffarna på ”volvo v60” fanns också en V90.
curl -X POST https://api.reefapi.com/wayke/v1/search \
-H "x-api-key: DIN_API_NYCKEL" \
-H "content-type: application/json" \
-d '{"query": "volvo v60", "max_results": 12}'{
"ok": true,
"data": {
"results": [
{
"listing_id": "b85ca8c1-6bea-421d-9241-d382ebe82c62",
"title": "Volvo V60",
"url": "https://www.wayke.se/objekt/b85ca8c1-6bea-421d-9241-d382ebe82c62",
"price": 431900,
"currency": "SEK",
"price_type": "cash",
"subtitle": "T6 Plus Dark Nordic Edition",
"seller": { "id": "cebe897b-4a06-4dc4-a3b7-50c1a1d9a7bd", "name": "...", "city": "Hallsberg" },
"model_year": 2025,
"mileage_km": 50640,
"odometer": { "unit": "SCANDINAVIAN_MILE", "value": 5064 },
"country": "SE",
"gtin": null,
...
},
...
{
"listing_id": "cdb4ecac-325d-4963-819a-5350a6a47e40",
"title": "Volvo V90",
"price": 248900,
"currency": "SEK",
"subtitle": "Volvo V90 B4 AWD Momentum Advanced SE H&K Backkamera Värmare Drag",
"seller": { "name": "...", "city": "Vallentuna", ... },
"model_year": 2021,
"mileage_km": 163320,
"odometer": { "unit": "SCANDINAVIAN_MILE", "value": 16332 },
...
},
{
"listing_id": "f630af42-27e9-5aa0-acab-d07f22dd2da7",
"title": "Volvo V60",
"url": "https://www.wayke.se/objekt/f630af42-27e9-5aa0-acab-d07f22dd2da7",
"price": 179000,
"currency": "SEK",
"price_type": "cash",
"subtitle": "D5 AWD TwinE Cl R-Design",
"seller": { "name": "...", "city": "Växjö", ... },
"model_year": 2018,
"mileage_km": null,
"odometer": { "unit": "KILOMETER", "value": 112000 },
...
},
...
],
"count": 12,
"total_results": 1865,
"page": 1,
"source_page_size": 24,
"source_page_count": 24,
"excluded_non_cash_count": 0,
"max_results": 12,
"has_more": true
},
"meta": { "record_count": 12, "charged_credits": 2, "cache_hit": false, "mode": "live" }
}Skrapa wayke.se själv: sida 2, modellåret och karossen
Den första versionen av motorn läste sökningen från den färdiga HTML-sidan, och i det första testet i oktober 2026 gav sida 2 tillbaka innehållet från sida 1. Sidan såg normal ut och hade bilar, bara fel bilar. Testet fångade det eftersom sidnumret i svaret inte stämde. I dag går sökningen via samma JSON-sökning som wayke.se själv använder, med riktiga sidor, och svaret är omkring 30 kB i stället för 820 kB HTML.
Annonssidans strukturerade data har ett produktionsdatum som är lätt att ta för modellåret. På den första Volvon vi kontrollerade var produktionsdatumet 2021 och modellåret 2022. `model_year` kommer därför från fältet för modellår och aldrig från produktionsdatumet.
Karosstypen lämnas helt utanför, eftersom samma data angav en V60, alltså en kombi, som sedan. Vi gissar inte fram en rättad kaross, och därför finns det inget sådant fält i svaret.
Till sist enheten: i våra sökningar angav Wayke mätarställningen i svenska mil på 28 av 36 bilar. Ett skript som sparar talet 14 400 som kilometer får en bil som har gått 144 000 km att se tio gånger mindre körd ut än den är. Inget av det här ger ett felmeddelande; det märks först när någon lägger siffrorna bredvid annonsen.
Gränser och ärliga noteringar
- Inofficiellt: API:et kommer inte från Wayke, och Wayke är inte vår partner.
- Längre än till sida 2 kommer man inte, så en sökning ger högst 48 bilar. ”volvo v60” hade 1 865 träffar i `total_results`, och 1 817 av dem nås alltså inte härifrån. Smalna av sökorden hellre än att försöka bläddra.
- Det enda som styr sökningen är fritexten. Pris, modellår, mätarställning, ort och sorteringsordning går inte att ange, och träffarna kan innehålla andra modeller än den man sökte på.
- `mileage_km` i sökningen är null när Wayke anger mätarställningen i kilometer (8 av 36 rader i våra två sökningar). Värdet finns då i `odometer`, och `listing` ger det i `mileage_km`.
- Bara bilar med kontantpris i kronor kommer med. `total_results` räknar ändå med bilar som bara har månadspris eller leasing; hur många som togs bort på sidan står i `excluded_non_cash_count` (0 i våra sökningar).
- Priset är annonspriset, inte vad bilen till slut såldes för. Waykes värdering, provkörning, privatleasing och finansiering ingår inte.
- Utöver priset ger `listing` bilens VIN och registreringsnummer. Fundera på om du verkligen behöver lagra dem; för prisstatistik räcker modell, modellår och mätarställning.
- Beskrivningen kan saknas: i vår enda hämtning var `description` null. Någon GTIN finns inte för bilar, så `gtin` är alltid null.
- Bara Sverige ingår.
- `search` kostar 2 krediter per anrop oavsett `max_results`, `listing` kostar 4.
- Varje svar visar wayke.se så som sajten såg ut vid anropet. Vill du följa priser över tid får du själv spara svaren med datum.