OpenAPI-kontrakt
Generera en typad klient i ditt språk från OpenAPI-dokumentet och validera anrop mot det.
AVS, AutoUncle Vehicle Schema, är ett öppet, versionerat JSON Schema för att beskriva en bil: vad den är, hur den är byggd och vilken utrustning den har. Använd det i dina egna system, validera det i sju språk och bygg på ett API som använder samma identitetsmodell.
AVS har två slags dokument: ett typdokument beskriver en bil så som den är byggd, till exempel en BMW 320e G20 sedan med M Sport; ett fordonsdokument beskriver en fysisk bil av den typen, med VIN-nummer, mätarställning, färg och historik. Licensierat under Apache-2.0, utan katalogdata.
AVS säger vad bilen är. Vad den är värd och var den säljs hör hemma någon annanstans.
Bara märke och modell är obligatoriska. Ingenting gissas, och det som saknas måste anges uttryckligen.
Varje katalogpost anger sina ID:n i valfritt schema, till exempel AutoUncle, Wikidata eller KBA HSN/TSN, och inget av dem har företräde.
Enheter ingår i fältnamnen, värden följer EU:s intyg om överensstämmelse (CoC) och WLTP, och länder, valutor och VIN-nummer använder ISO-koder.
{
"avs": { "version": "0.3", "kind": "type" },
"identity": {
"brand": {
"name": "BMW",
"ids": [
{ "scheme": "autouncle", "value": "b-example0001" },
{ "scheme": "wikidata", "value": "Q26678" }
]
},
"model": {
"name": "3 Series",
"localNames": { "DK": "3-serie" }
},
"generation": { "name": "3 Series (G20/G21)", "code": "G20" },
"drivetrain": {
"name": "320e (204 Hp) Plug-in Hybrid Steptronic"
}
},
"specification": {
"powertrain": {
"energy": ["petrol", "electricity"],
"electrification": "phev",
"powerKw": 150, "torqueNm": 300
}
},
"equipment": {
"trim": {
"name": "M Sport",
"variations": ["M Sportpakke", "M-Sport"]
}
}
}
Märke, modell, generation och fas, sedan kaross och drivlina som oberoende fakta, och utrustningsnivå, paket och tillval med namn. Våra API:er identifierar bilar längs samma väg, från märke och modell till generation, motorvariant och utrustningsnivå, med stabila ID:n som du kan spara i AVS under schemat autouncle.
Varje paket innehåller schemat och en validerare som returnerar varje fel med en JSON Pointer till platsen. Paketen genereras från schemat, skrivs aldrig för hand, och deras version är alltid densamma som schemats.
| Språk | Paket | Validera |
|---|---|---|
| Ruby | autouncle-avs | AVS.validate(doc) |
| TypeScript / JavaScript | @autouncle/avs | validate(doc) |
| Python | autouncle-avs | avs.validate(doc) |
| Go | github.com/AutoUncle/avs/packages/go | avs.Validate(b) |
| Java / JVM | com.autouncle:avs | Avs.validate(json) |
| .NET | AutoUncle.Avs | AvsSchema.Validate(json) |
| PHP | autouncle/avs | Avs::validate($doc) |
Generera en typad klient i ditt språk från OpenAPI-dokumentet och validera anrop mot det.
Fel är problemdokument enligt RFC 9457 med en stabil kod, en hänvisning till fältet och ett förslag på åtgärd.
Länder enligt ISO 3166, valutor enligt ISO 4217 och VIN-nummer enligt ISO 3779, i anrop och resultat.
Varje värdering tar en idempotensnyckel, så att ett upprepat anrop aldrig debiteras två gånger.
Samma API som verktyg för AI-agenter, plus en integrationsskill och llms.txt för kodassistenter.
Läs schemat, generera en klient från OpenAPI-kontraktet och värdera din första bil med en gratis testnyckel.