VIN Lookup API Documentation

Comprehensive documentation for integrating our vehicle data API with your applications

Introduction

L'API de recherche VIN d'Autoref permet d'accéder à des informations complètes sur les véhicules en interrogeant différents identifiants tels que le VIN (Numéro d'Identification du Véhicule), les numéros d'homologation UE et les codes d'homologation suisses.

Notre API est conçue pour s'intégrer facilement à vos applications, offrant des spécifications techniques détaillées, des données environnementales et des documents officiels sur les véhicules.

Fonctionnalités de l'API

  • Recherches de véhicules basées sur le VIN
  • Support des VIN anciens (avant 1981)
  • Recherches par homologation UE
  • Recherches par code d'homologation suisse (code TG)
  • Spécifications détaillées des véhicules
  • Support multilingue

Pour Commencer

Authentification

Pour utiliser l'API Autoref, vous aurez besoin d'une clé API. Toutes les requêtes doivent inclure votre clé API comme paramètre d'en-tête.

Vous n'avez pas de clé API ? Contactez-nous
En-tête d'authentification
X-API-Key: your_api_key_here

URL de base

Toutes les requêtes API doivent être effectuées à l'URL de base suivante :

URL de base de l'API
https://api.autoref.eu

Format de réponse

Toutes les réponses sont retournées au format JSON. Les réponses réussies incluent un code d'état 200 OK.

Exemple de réponse
{
  "success": true,
  "data": [{
      "id": 55411,
      "VIN": "WBA11AL010",
      "BRAND": "BMW",
      "BRAND_MODEL": "BMW M235I XDRIVE",
      "MODEL": "M235i",
      "MODEL2": "xDrive",
      "MODEL3": null,
      "POWER_KW": 225.0,
      "POWER_DIN": 306.0,
      "FUEL": "Gasoline",
      "DATE_FIRST_CIRCULATION": 2020,
      "RECORD_TYPE": "TG"
  }]
}

Gestion des erreurs

Lorsque des erreurs se produisent, l'API renvoie un code d'état HTTP approprié et un message d'erreur.

Exemple de réponse d'erreur
{
  "success": false,
  "error": "not_found",
  "message": "Vehicle not found"
}

Note importante :

Les limites de taux de l'API s'appliquent en fonction de votre forfait d'abonnement. Consultez la section Tarification pour plus de détails sur les limites de requêtes pour votre niveau.

API Endpoints

Our API offers several endpoints to query vehicle information using different identifiers.

Recherche VIN

Récupérer les informations du véhicule par VIN (Numéro d'Identification du Véhicule).

GET /vehicles/{vin}

Paramètres de chemin

ParamètreTypeDescription
vinstringLe VIN (Numéro d'Identification du Véhicule) du véhicule. Minimum 10 caractères.

Paramètres de requête

ParamètreTypeDéfautDescription
langstringenCode de langue pour les réponses localisées (en, fr, de, es, it)

Exemple de requête

curl -X GET "https://api.autoref.eu/vehicles/WBA11AL0101234567" \
                -H "X-API-Key: your_api_key_here"

Exemple de réponse

[
  {
      "id": 55411,
      "VIN": "WBA11AL010",
      "BRAND": "BMW",
      "BRAND_MODEL": "BMW M235I XDRIVE",
      "MODEL_COC": null,
      "VARIANT": null,
      "VERSION": null,
      "MODEL": "M235i",
      "MODEL2": "xDrive",
      "MODEL3": null,
      "POWER_KW": 225.0,
      "POWER_DIN": 306.0,
      "FUEL": "Essence",
      "DATE_FIRST_CIRCULATION": 2020,
      "RECORD_TYPE": "TG"
  }
]

Champs de réponse

ChampTypeDescription
idintegerIdentifiant unique pour l'enregistrement du véhicule
VINstringNuméro d'Identification du Véhicule
BRANDstringFabricant du véhicule
BRAND_MODELstringNom complet du modèle incluant la marque
MODELstringNom du modèle principal
MODEL2stringIdentifiant de modèle secondaire
MODEL3stringIdentifiant de modèle tertiaire
POWER_KWnumberPuissance du moteur en kilowatts
POWER_DINnumberPuissance du moteur en chevaux (CH)
FUELstringType de carburant (Essence, Diesel, Électrique, etc.)
DATE_FIRST_CIRCULATIONintegerAnnée de première immatriculation
RECORD_TYPEstringType de base de données source (TG, OC, OLD, X)

Remarques :

  • Les recherches VIN ne sont pas sensibles à la casse. "WBA11AL010" et "wba11al010" renverront les mêmes résultats.
  • Les correspondances partielles de VIN sont prises en charge. L'API renverra tous les véhicules correspondant au préfixe VIN fourni.
  • Pour la plupart des véhicules modernes, un minimum de 10 caractères est nécessaire pour une correspondance fiable.

Recherche VIN ancien

Récupérer des informations pour les véhicules antérieurs à 1981 en utilisant un format de VIN/numéro de châssis plus court ainsi que le nom de la marque.

GET /legacy-vehicles/{vin}

Paramètres de chemin

ParamètreTypeDescription
vinstringLe VIN ancien ou numéro de châssis du véhicule.

Paramètres de requête

ParamètreTypeObligatoireDescription
brandstringYesLe fabricant du véhicule (par exemple, PORSCHE, BMW, MERCEDES-BENZ)
langstringNoCode de langue pour les réponses localisées (en, fr, de, es, it)

Exemple de requête

curl -X GET "https://api.autoref.eu/legacy-vehicles/9119311194?brand=PORSCHE&lang=en" \
              -H "X-API-Key: your_api_key_here"

Exemple de réponse

[
  {
      "id": 11580,
      "VIN": "9119311",
      "BRAND": "PORSCHE",
      "BRAND_MODEL": "PORSCHE 911 SC 3,0 TARGA",
      "MODEL_COC": null,
      "VARIANT": null,
      "VERSION": null,
      "MODEL": "911",
      "MODEL2": "SC",
      "MODEL3": "3,0 Targa",
      "POWER_KW": 132.4,
      "POWER_DIN": 180.0,
      "FUEL": "Gasoline",
      "DATE_FIRST_CIRCULATION": 1979,
      "RECORD_TYPE": "OLD"
  },
  {
      "id": 11581,
      "VIN": "9119311",
      "BRAND": "PORSCHE",
      "BRAND_MODEL": "PORSCHE 911 SC 3.0",
      "MODEL_COC": null,
      "VARIANT": null,
      "VERSION": null,
      "MODEL": "911",
      "MODEL2": "SC",
      "MODEL3": "3.0",
      "POWER_KW": 132.0,
      "POWER_DIN": 179.0,
      "FUEL": "Gasoline",
      "DATE_FIRST_CIRCULATION": 1979,
      "RECORD_TYPE": "OLD"
  }
]

Champs de réponse

Mêmes champs que la réponse de recherche VIN, avec les différences suivantes :

ChampDescription
RECORD_TYPESera "OLD" pour les véhicules anciens

Note importante :

Les véhicules antérieurs à 1981 n'avaient pas de VIN standardisés. Pour des résultats précis :

  • Le paramètre de marque est obligatoire
  • Le VIN peut être plus court que les normes modernes (souvent 3-10 caractères)
  • Plusieurs résultats peuvent être renvoyés pour la même combinaison VIN/marque

Recherche par homologation de type

Récupérer les véhicules par leur numéro d'homologation UE.

GET /vehicles-by-approval/{approval}

Paramètres de chemin

ParamètreTypeDescription
approvalstringNuméro d'homologation UE (par exemple, e1*2007/46*2064*07)

Paramètres de requête

ParamètreTypeDéfautDescription
langstringenCode de langue pour les réponses localisées (en, fr, de, es, it)

Exemple de requête

curl -X GET "https://api.autoref.eu/vehicles-by-approval/e1*2007/46*2064*07?lang=en" \
                    -H "X-API-Key: your_api_key_here"

Exemple de réponse

[
  {
      "id": 55424,
      "VIN": "WBA11AL010",
      "BRAND": "BMW",
      "BRAND_MODEL": "BMW M235I XDRIVE",
      "MODEL_COC": null,
      "VARIANT": null,
      "VERSION": null,
      "MODEL": "M235i",
      "MODEL2": "xDrive",
      "MODEL3": null,
      "POWER_KW": 225.0,
      "POWER_DIN": 306.0,
      "FUEL": "Gasoline",
      "DATE_FIRST_CIRCULATION": 2023,
      "RECORD_TYPE": "TG"
  }
]
Format du numéro d'homologation de type

Les numéros d'homologation UE suivent ce format : e1*2007/46*2064*07

  • e1 : Code du pays où l'homologation a été délivrée (e1 = Allemagne)
  • 2007/46 : Numéro de directive-cadre
  • 2064 : Numéro d'homologation de base
  • 07 : Numéro d'extension

Champs de réponse

Mêmes champs que la réponse de recherche VIN.

Remarques :

  • Les numéros d'homologation de type contiennent des caractères spéciaux tels que *, /, etc. Assurez-vous d'encoder correctement ces caractères en URL dans vos requêtes.
  • Ce point de terminaison peut renvoyer plusieurs véhicules si plusieurs modèles partagent la même homologation de type.
  • Le RECORD_TYPE sera généralement "TG" pour les correspondances d'homologation de type.

Recherche par homologation suisse (code TG)

Récupérer des données complètes sur le véhicule par code d'homologation suisse (code TG).

GET /vehicle/tgcode/{tgcode}

Paramètres de chemin

ParamètreTypeDescription
tgcodestringCode d'homologation suisse (par exemple, 1BC170)

Paramètres de requête

ParamètreTypeDéfautDescription
langstringenCode de langue pour les réponses localisées (en, fr, de, es, it)

Exemple de requête

curl -X GET "https://api.autoref.eu/vehicle/tgcode/1BC170?lang=en" \
                        -H "X-API-Key: your_api_key_here"

Exemple de réponse

{
  "VIN_INFO": {
      "id": 55424,
      "VIN": "WBA11AL010",
      "BRAND": "BMW",
      "BRAND_MODEL": "BMW M235I XDRIVE",
      "POWER_KW": 225.0,
      "POWER_DIN": 306.0,
      "GEARBOX": ["Manual"],
      "CATEGORY": "M1",
      "TYPE_VEHICLE": "Passenger car",
      "MODEL_FULL": "M235i xDrive",
      "MODEL": "M235i",
      "MODEL2": "xDrive",
      "BODY": "Coupe",
      "COLOR": "Black",
      "FUEL": "Gasoline",
      "DRIVETRAIN": "All-wheel drive",
      "DATE_FIRST_CIRCULATION": "2020-05-12"
  },
  "SPECS": {
      "TGCODE": "1BC170",
      "DATE_REGISTRAR_START": "2019-03-15",
      "DATE_REGISTRAR_END": "2025-12-31",
      "CATEGORY": "M1",
      "TVV": ["WBA11AL010"],
      "MANUFACTURER": "BMW AG, Munich",
      "VIN_LOCATION": "lower right windshield, driver's door pillar",
      "AXLES_WHEELS": "2/4",
      "SUSPENSION_TYPE": "coil springs, shock absorbers",
      "STEERING_TYPE": "rack and pinion, electric assistance",
      "BRAKE_TYPE": "discs/discs",
      "WEIGHT_EMPTY_MIN_MAX": "1655 - 1740",
      "LENGTH_MIN_MAX": "4454 - 4454",
      "WIDTH_MIN_MAX": "1774 - 1774",
      "HEIGHT_MIN_MAX": "1408 - 1408"
  },
  "CONSUMPTION": [
      {
      "COMBINED_CONSUMPTION": 7.8,
      "COMBINED_CONSUMPTION_WLTP": 8.2,
      "URBAN_CONSUMPTION": 10.4,
      "COMBINED_CO2_EMISSIONS": 192,
      "COMBINED_CO2_EMISSIONS_WLTP": 188,
      "ENERGY_EFFICIENCY_CATEGORY": "G"
      }
  ],
  "EMISSION": [
      {
      "COMBINED_CO2_EMISSIONS": 192,
      "COMBINED_CO2_EMISSIONS_WLTP": 188,
      "NOISE_DRIVING": 72,
      "CODE_SWISS_EMISSION": "A7M",
      "CATALIZER": true,
      "PARTICLE_FILTER": false
      }
  ],
}

Structure de réponse

Contrairement aux autres points de terminaison, celui-ci renvoie un enregistrement de véhicule beaucoup plus détaillé avec plusieurs sections :

SectionDescription
VIN_INFOInformations d'identification de base du véhicule
SPECSSpécifications techniques détaillées issues de l'homologation de type
CONSUMPTIONDonnées de consommation de carburant dans différents cycles d'essai
EMISSIONDonnées d'émissions pour divers polluants
PDFURL facultative vers la documentation PDF si disponible

Remarques :

  • Les codes TG suisses ont trois générations de format : numérique (avant 1985), alphanumérique à une lettre (1985-1995) et alphanumérique à deux lettres (après 1995).
  • Ce point de terminaison renvoie les données de véhicule les plus complètes, y compris les détails de consommation et d'émission.
  • La structure de réponse est différente des autres points de terminaison, contenant plusieurs sections imbriquées.

Recherche détaillée de véhicule

Récupérer des données complètes sur le véhicule par type d'enregistrement et ID.

GET /vehicle/{record_type}/{id}

Paramètres de chemin

ParamètreTypeDescription
record_typestringType de base de données source (TG, OC, OLD, X)
idintegerL'identifiant unique de l'enregistrement du véhicule

Paramètres de requête

ParamètreTypeDéfautDescription
langstringenCode de langue pour les réponses localisées (en, fr, de, es, it)

Exemple de requête

curl -X GET "https://api.autoref.eu/vehicle/TG/55424?lang=en" \
                    -H "X-API-Key: your_api_key_here"

Exemple de réponse

Le format de réponse est similaire au point de terminaison du code TG, avec des informations détaillées sur le véhicule organisées en sections.

Remarques :

  • Ce point de terminaison est généralement utilisé après avoir trouvé un véhicule avec l'un des points de terminaison de recherche, en utilisant l'ID et le RECORD_TYPE des résultats de recherche initiaux.
  • Différents types d'enregistrement peuvent renvoyer différentes structures de données, les enregistrements TG (homologation de type) contenant les informations les plus complètes.
  • Valeurs valides pour record_type : TG (homologation de type), OC (certificat de conformité), OLD (ancien), X (importé)

Recherche de marques de véhicules

Récupérer une liste de toutes les marques de véhicules disponibles dans la base de données.

GET /vehicle-brands

Paramètres de requête

ParamètreTypeDéfautDescription
langstringenCode de langue pour les réponses localisées (en, fr, de, es, it)

Exemple de requête

curl -X GET "https://api.autoref.eu/vehicle-brands" \
                    -H "X-API-Key: your_api_key_here"

Exemple de réponse

[
  ...
  {
    "id": 490,
    "brand": "ALFA ROMEO"
  },
  {
    "id": 551,
    "brand": "AUDI"
  },
  {
    "id": 23,
    "brand": "BMW"
  },
  {
    "id": 279,
    "brand": "CHEVROLET"
  },
  ...
]

Champs de réponse

ChampTypeDescription
namestringNom complet de la marque
codestringCode de la marque (généralement 3 lettres)
countrystringCode pays ISO d'origine du fabricant

Remarques :

  • Ce point de terminaison est utile pour remplir les menus déroulants dans les applications, en particulier lors de l'utilisation de recherches VIN anciennes qui nécessitent un paramètre de marque.
  • La liste est complète et comprend tous les fabricants présents dans la base de données.
  • Les noms de marque doivent être utilisés exactement comme ils apparaissent dans cette liste lors des appels API.

Réponses d'erreur

L'API utilise des codes d'état HTTP standard pour indiquer le succès ou l'échec des requêtes. Voici les réponses d'erreur courantes que vous pourriez rencontrer :

Code d'étatType d'erreurDescription
400Requête incorrecteLa requête était invalide ou manquait de paramètres requis
401Non autoriséLa clé API est manquante ou invalide
403InterditLa clé API est valide mais ne dispose pas des autorisations pour la ressource demandée
404Non trouvéLe véhicule ou la ressource spécifiée n'a pas été trouvé(e)
429Trop de requêtesLimite de taux dépassée pour votre forfait
500Erreur interne du serveurUne erreur inattendue s'est produite sur le serveur

Exemple de réponse d'erreur

404 Non trouvé
{
  "success": false,
  "error": "not_found",
  "message": "Vehicle not found for VIN: WBA11AL010XXXXXX"
}

Limitation de débit

Les requêtes API sont soumises à une limitation de débit basée sur votre forfait d'abonnement. Lorsque vous dépassez votre limite de débit, vous recevrez une réponse 429 Trop de requêtes.

429 Trop de requêtes
{
  "success": false,
  "error": "rate_limit_exceeded",
  "message": "Rate limit exceeded. Please upgrade your plan or try again later.",
  "reset_at": "2025-04-11T12:30:15Z"
}

Limites de taux et forfaits

Notre API propose plusieurs niveaux d'abonnement pour répondre à différents besoins d'utilisation. Chaque forfait a des limites de taux et des fonctionnalités spécifiques.

Gratuit

0 €/mois

  • 50 requêtes / mois
  • Données de base des véhicules
  • Recherche VIN
  • Recherche d'homologation de type
  • Spécifications détaillées des véhicules
Basique

29 €/mois

  • 5 000 requêtes / mois
  • Données complètes des véhicules
  • Toutes les méthodes de recherche
  • Spécifications détaillées des véhicules
  • Support par email
Premium

99 €/mois

  • 25 000 requêtes / mois
  • Données complètes des véhicules
  • Toutes les méthodes de recherche
  • Spécifications détaillées des véhicules
  • Support prioritaire

Besoin de limites plus élevées ?

Si vous avez besoin de limites de taux plus élevées ou de fonctionnalités personnalisées, veuillez contacter notre équipe commerciale pour un forfait Entreprise adapté à vos besoins.

Contacter l'équipe commerciale

Support et FAQ

Comment obtenir une clé API ?

Actuellement, les clés API sont fournies sur demande via notre formulaire de contact. Remplissez simplement le formulaire de contact avec les détails de votre cas d'utilisation, et notre équipe vous répondra par email avec votre clé API unique et des instructions de configuration. Ce processus manuel nous permet de fournir une assistance personnalisée pour chaque intégration.

Quelle est la différence entre les différentes méthodes de recherche VIN ?

Notre API propose plusieurs méthodes pour rechercher des informations sur les véhicules :

  • Recherche VIN: Utilise un VIN standard à 17 caractères (ou minimum 10 caractères) pour les véhicules modernes (après 1981)
  • Recherche VIN ancien: Pour les véhicules plus anciens (avant 1981) utilisant des numéros de châssis plus courts ainsi que le nom de la marque
  • Recherche par homologation de type: Recherche par numéro d'homologation UE
  • Recherche par code TG: Recherche par code d'homologation suisse

Chaque méthode donne accès à différents niveaux de détail. Les recherches par code TG et par homologation de type fournissent généralement les données techniques les plus complètes.

Quelle est la précision des données des véhicules ?

Nos données de véhicules proviennent directement des bases de données d'homologation gouvernementales officielles et des homologations de type des fabricants, offrant une précision significativement plus élevée que les décodeurs VIN typiques qui utilisent souvent des algorithmes pour interpréter les modèles VIN.

Pour les véhicules européens et suisses, nous fournissons des spécifications précises telles que soumises par les fabricants aux autorités réglementaires. Pour les véhicules anciens, l'exhaustivité des données peut varier en fonction des archives historiques disponibles.

Quelles langues l'API prend-elle en charge ?

L'API prend en charge plusieurs langues pour les réponses localisées. Langues actuellement prises en charge :

  • en - Anglais (par défaut)
  • fr - Français
  • de - Allemand
  • es - Espagnol
  • it - Italien

Spécifiez votre langue préférée en utilisant le lang paramètre de requête avec n'importe quelle requête API.

Comment gérer les erreurs de l'API ?

Toutes les réponses de l'API incluent des codes d'état HTTP qui indiquent le succès ou l'échec de la requête. Pour les erreurs, nous fournissons également une réponse JSON structurée avec :

  • success: Toujours false pour les réponses d'erreur
  • error: Un code d'erreur lisible par machine
  • message: Une description lisible par l'homme de ce qui s'est mal passé

Nous recommandons d'implémenter une gestion appropriée des erreurs dans votre code pour gérer avec élégance différents types d'erreurs, en particulier les erreurs "not_found" pour les recherches VIN et les réponses de limitation de débit.

Besoin de plus d'aide ?

Si vous ne trouvez pas la réponse à votre question ici, notre équipe de support est prête à vous aider.

Exemples de code

Voici quelques exemples de code pour vous aider à intégrer notre API à votre application dans différents langages de programmation.

JavaScript / Node.js

// Example using fetch in Node.js (with node-fetch package)
const fetch = require('node-fetch');

async function getVehicleByVin(vin) {
  try {
    const response = await fetch(`https://api.autoref.eu/vehicles/${vin}`, {
      headers: {
        'X-API-Key': 'your_api_key_here'
      }
    });
    
    if (!response.ok) {
      const errorData = await response.json();
      throw new Error(errorData.message || 'Failed to fetch vehicle data');
    }
    
    const data = await response.json();
    return data;
  } catch (error) {
    console.error('Error fetching vehicle data:', error);
    throw error;
  }
}

// Usage
getVehicleByVin('WBA11AL010')
  .then(data => console.log(data))
  .catch(error => console.error(error));

Python

import requests

def get_vehicle_by_vin(vin, api_key, lang='en'):
    """
    Fetch vehicle data by VIN
    
    Args:
        vin: Vehicle Identification Number
        api_key: Your API key
        lang: Language code for response (en, fr, de, es, it)
    
    Returns:
        Dictionary with vehicle data
    """
    url = f"https://api.autoref.eu/vehicles/{vin}"
    headers = {
        "X-API-Key": api_key
    }
    params = {
        "lang": lang
    }
    
    response = requests.get(url, headers=headers, params=params)
    
    # Check for errors
    if response.status_code != 200:
        try:
            error_data = response.json()
            error_message = error_data.get('message', 'Unknown error')
        except:
            error_message = f"HTTP Error: {response.status_code}"
        
        raise Exception(f"API Error: {error_message}")
    
    return response.json()

# Usage
try:
    api_key = "your_api_key_here"
    vehicle_data = get_vehicle_by_vin("WBA11AL010", api_key)
    print(vehicle_data)
except Exception as e:
    print(f"Error: {e}")

PHP

<?php
/**
 * Function to fetch vehicle data by VIN
 * 
 * @param string $vin Vehicle Identification Number
 * @param string $apiKey Your API key
 * @param string $lang Language code for response
 * 
 * @return array|null Vehicle data or null on error
 */
function getVehicleByVin($vin, $apiKey, $lang = 'en') {
    $url = "https://api.autoref.eu/vehicles/" . urlencode($vin) . "?lang=" . urlencode($lang);
    
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
        'X-API-Key: ' . $apiKey
    ]);
    
    $response = curl_exec($ch);
    $statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
    
    if ($statusCode !== 200) {
        $errorData = json_decode($response, true);
        $errorMessage = isset($errorData['message']) ? $errorData['message'] : 'Unknown error';
        error_log("API Error ($statusCode): $errorMessage");
        return null;
    }
    
    return json_decode($response, true);
}

// Usage
$apiKey = 'your_api_key_here';
$vehicleData = getVehicleByVin('WBA11AL010', $apiKey);

if ($vehicleData) {
    print_r($vehicleData);
} else {
    echo "Failed to retrieve vehicle data";
}
?>

Java

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
import java.time.Duration;

public class VinLookupExample {
    
    private static final String API_BASE_URL = "https://api.autoref.eu";
    private static final String API_KEY = "your_api_key_here";
    
    public static void main(String[] args) {
        try {
            String vin = "WBA11AL010";
            String vehicleData = getVehicleByVin(vin);
            System.out.println(vehicleData);
        } catch (Exception e) {
            System.err.println("Error: " + e.getMessage());
        }
    }
    
    public static String getVehicleByVin(String vin) throws Exception {
        HttpClient client = HttpClient.newBuilder()
                .connectTimeout(Duration.ofSeconds(10))
                .build();
                
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create(API_BASE_URL + "/vehicles/" + vin))
                .header("X-API-Key", API_KEY)
                .GET()
                .build();
                
        HttpResponse<String> response = client.send(request, BodyHandlers.ofString());
        
        if (response.statusCode() != 200) {
            throw new Exception("API Error: HTTP " + response.statusCode() + " - " + response.body());
        }
        
        return response.body();
    }
}

Prêt à commencer ?

Intégrez notre puissante API de données de véhicules à vos applications dès aujourd'hui et accédez à des spécifications techniques complètes pour des millions de véhicules.