Contract OpenAPI
Generați un client tipizat în limbajul dvs. din documentul OpenAPI și validați cererile pe baza lui.
AVS, AutoUncle Vehicle Schema, este un JSON Schema deschis și versionat pentru descrierea unei mașini: ce este, cum este construită și cu ce este echipată. Folosiți-l în propriile sisteme, validați-l în șapte limbaje și construiți pe un API care folosește același model de identitate.
AVS are două tipuri de documente: un document de tip descrie o mașină așa cum este construită, de exemplu un BMW 320e G20 sedan cu M Sport; un document de vehicul descrie o mașină fizică de acel tip, cu VIN-ul, kilometrajul, culoarea și istoricul ei. Licențiat sub Apache-2.0, fără date de catalog incluse.
AVS spune ce este mașina. Cât valorează și unde este de vânzare țin de altă parte.
Doar marca și modelul sunt obligatorii. Nimic nu este ghicit, iar absența trebuie declarată.
Fiecare înregistrare de catalog își listează ID-urile în orice schemă, precum AutoUncle, Wikidata sau KBA HSN/TSN, fără ca vreuna să fie privilegiată.
Unitățile fac parte din numele câmpurilor, valorile urmează Certificatul de Conformitate UE și WLTP, iar țările, monedele și VIN-urile folosesc coduri ISO.
{
"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"]
}
}
}
Marcă, model, generație și fază, apoi caroseria și motorizarea ca fapte independente, iar versiunea de echipare, pachetele și opțiunile după nume. API-urile noastre identifică mașinile pe același drum, de la marcă și model la generație, motorizare și versiune de echipare, cu ID-uri stabile pe care le puteți stoca în AVS sub schema autouncle.
Fiecare pachet include schema și un validator care returnează fiecare eroare cu un JSON Pointer către ea. Pachetele sunt generate din schemă, niciodată scrise de mână, iar versiunea lor este mereu aceeași cu a schemei.
| Limbaj | Pachet | Validare |
|---|---|---|
| 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) |
Generați un client tipizat în limbajul dvs. din documentul OpenAPI și validați cererile pe baza lui.
Erorile sunt documente de tip problemă conform RFC 9457, cu un cod stabil, o trimitere la câmp și o soluție sugerată.
Țări ISO 3166, monede ISO 4217 și VIN-uri ISO 3779, în cereri și în rezultate.
Fiecare evaluare acceptă o cheie de idempotență, astfel încât o cerere reîncercată nu este niciodată taxată de două ori.
Același API sub formă de instrumente pentru agenți AI, plus un skill de integrare și llms.txt pentru asistenții de programare.
Citiți schema, generați un client din contractul OpenAPI și evaluați prima mașină cu o cheie de test gratuită.