Genel Bakış

OtoBilgi API, Şasi doğrulama ve araç bilgilerini almak için güçlü ve güvenilir bir REST API'dir. API, JSON formatında veri döndürür ve HTTPS üzerinden güvenli iletişim sağlar.

Base URL
https://api.otobilgi.com.tr/v1
Format
JSON
Protokol
HTTPS

Kimlik Doğrulama

API'yi kullanmak için bir API anahtarına ihtiyacınız vardır. API anahtarınızı HTTP başlığında Bearer token olarak gönderin.

Authorization Header
Authorization: Bearer YOUR_API_KEY
API Anahtarı Almak: Anasayfamızdan API Anahtarı Al butonuna basabilirsiniz.

Hata Kodları

API standart HTTP durum kodları kullanır:

200
OK

İstek başarıyla işlendi

400
Bad Request

Geçersiz istek parametreleri

401
Unauthorized

Geçersiz veya eksik API anahtarı

429
Too Many Requests

Rate limit aşıldı

500
Internal Server Error

Sunucu hatası

Şasi Sorgulama

Tek bir Şasi sorgular ve araç bilgilerini döndürür.

GET /search/{chassis}

Örnek İstek

cURL
curl -X GET "https://api.otobilgi.com.tr/v1/search/1HGBH41JXMN109186" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

Örnek Yanıt

JSON Response
{
  "success": true,
  "data": {
    "chassis": "1HGBH41JXMN109186",
    "make": "Honda",
    "model": "Civic",
    "year": 2021,
    "trim": "LX",
    "engine": {
      "type": "1.5L Turbo",
      "cylinders": 4,
      "fuel_type": "Gasoline",
      "horsepower": 174
    },
    "transmission": {
      "type": "CVT",
      "speeds": "Continuously Variable"
    },
    "body": {
      "style": "Sedan",
      "doors": 4,
      "seats": 5
    },
    "manufacturing": {
      "country": "United States",
      "plant": "Marysville, OH",
      "date": "2021-03-15"
    },
    "safety": {
      "airbags": "Front, Side, Curtain",
      "abs": true,
      "stability_control": true
    }
  },
  "timestamp": "2024-12-15T10:30:00Z"
}

Şasi Doğrulama

Şari numarasının geçerliliğini kontrol eder.

GET /validate/{chassis}

Örnek Yanıt

JSON Response
{
  "success": true,
  "data": {
    "chassis": "1HGBH41JXMN109186",
    "valid": true,
    "check_digit": "M",
    "calculated_check_digit": "M",
    "format_valid": true,
    "length_valid": true
  }
}

JavaScript SDK

JavaScript/Node.js için örnek kullanım:

JavaScript
const API_KEY = 'YOUR_API_KEY';
const BASE_URL = 'https://api.otobilgi.com.tr/v1';

async function searchChassis(chassis) {
  try {
    const response = await fetch(`${BASE_URL}/search/${chassis}`, {
      method: 'GET',
      headers: {
        'Authorization': `Bearer ${API_KEY}`,
        'Content-Type': 'application/json'
      }
    });

    if (!response.ok) {
      throw new Error(`HTTP error! status: ${response.status}`);
    }

    const data = await response.json();
    return data;
  } catch (error) {
    console.error('Chassis number query error:', error);
    throw error;
  }
}

// Kullanım
searchChassis('1HGBH41JXMN109186')
  .then(result => {
    console.log('Vehicle info:', result.data);
  })
  .catch(error => {
    console.error('Error:', error);
  });

Python SDK

Python için örnek kullanım:

Python
import requests
import json

class OtoBilgiAPI:
    def __init__(self, api_key):
        self.api_key = api_key
        self.base_url = 'https://api.otobilgi.com.tr/v1'
        self.headers = {
            'Authorization': f'Bearer {api_key}',
            'Content-Type': 'application/json'
        }

    def search_chassis(self, chassis):
        """Search a single Chassis"""
        url = f'{self.base_url}/search/{chassis}'

        try:
            response = requests.get(url, headers=self.headers)
            response.raise_for_status()
            return response.json()
        except requests.exceptions.RequestException as e:
            print(f'Error decoding Chassis: {e}')
            raise

    def validate_chassis(self, chassis):
        """Validate a Chassis"""
        url = f'{self.base_url}/validate/{chassis}'

        try:
            response = requests.get(url, headers=self.headers)
            response.raise_for_status()
            return response.json()
        except requests.exceptions.RequestException as e:
            print(f'Error validating Chassis: {e}')
            raise

# Kullanım
api = OtoBilgiAPI('YOUR_API_KEY')

try:
    result = api.search_chassis('1HGBH41JXMN109186')
    print(json.dumps(result, indent=2))
except Exception as e:
    print(f'Error: {e}')

PHP SDK

PHP için örnek kullanım:

PHP
public function __construct($apiKey) {
    $this->apiKey = $apiKey;
    $this->headers = [
        "Authorization: Bearer {$apiKey}",
        "Content-Type: application/json"
    ];
}

private function request($url) {
    $ch = curl_init();

    curl_setopt_array($ch, [
        CURLOPT_URL => $url,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => $this->headers,
        CURLOPT_TIMEOUT => 30
    ]);

    $response = curl_exec($ch);
    $error    = curl_error($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

    curl_close($ch);

    if ($error) {
        throw new Exception("cURL Error: $error");
    }

    if ($httpCode >= 400) {
        throw new Exception("HTTP Error $httpCode: $response");
    }

    return json_decode($response, true);
}

public function searchChassis($chassis) {
    $url = $this->baseUrl . "/search/" . urlencode($chassis);
    return $this->request($url);
}

public function validateChassis($chassis) {
    $url = $this->baseUrl . "/validate/" . urlencode($chassis);
    return $this->request($url);
}

API Test Aracı

API'yi doğrudan bu sayfadan test edebilirsiniz:

Şasi Sorgulama Testi

Bunlarda İlginizi Çekebilir