Güncel Döviz Kurları API: Web Sitenize Entegre Edin

Güncel Döviz Kurları API: Web Sitenize Entegre Edin

Nisan 17, 2025

Okuma süresi: 5 dakika

Döviz Kurları API Kullanım Rehberi

API Genel Bakış

Döviz Kurları API'si, güncel döviz kurlarını JSON formatında sunan bir servistir. Bu API, web uygulamaları ve mobil platformlar için güncel kur bilgilerine kolay erişim sağlar.

API URL: https://api.teknikzeka.net/doviz/api.php

Temel Kullanım

API'yi kullanmak için basitçe belirtilen URL'ye HTTP GET isteği yapmanız yeterlidir:

GET https://api.teknikzeka.net/doviz/api.php

Yanıt Formatı

API başarılı olduğunda aşağıdaki yapıda bir JSON yanıtı döndürür:

json
{
    "success": true,
    "timestamp": 1744889160,
    "date": "2025-04-17 14:26:00",
    "source": "teknikzeka.net",
    "data": [
        {
            "code": "USD",
            "name": "Dolar",
            "buy": "38,11487",
            "sell": "38,12040",
            "change": "-0.05%",
            "change_direction": "down",
            "last_update": "14:25:51",
            "timestamp": 1744889160
        },
        {
            "code": "EUR",
            "name": "Euro",
            "buy": "43,57588",
            "sell": "43,65596",
            "change": "0.33%",
            "change_direction": "up",
            "last_update": "14:25:53",
            "timestamp": 1744889160
        },
        {
            "code": "GBP",
            "name": "Sterlin",
            "buy": "50,3716",
            "sell": "50,6241",
            "change": "-0.32%",
            "change_direction": "down",
            "last_update": "14:25:46",
            "timestamp": 1744889160
        }
    ]
}

Yanıt Alanları

  • success: İşlem durumu (true veya false)
  • timestamp: Unix timestamp formatında yanıt zamanı
  • date: İnsan tarafından okunabilir tarih ve saat (Türkiye saati, UTC+3)
  • source: Veri kaynağı
  • data: Para birimleri bilgilerini içeren dizi
    • code: Para birimi kodu (USD, EUR, GBP vb.)
    • name: Para birimi adı (Dolar, Euro, Sterlin)
    • buy: Alış kuru (Virgülle ayrılmış)
    • sell: Satış kuru (Virgülle ayrılmış)
    • change: Bir önceki değere göre değişim yüzdesi
    • change_direction: Değişim yönü ("up" veya "down")
    • last_update: Son güncelleme saati
    • timestamp: Unix timestamp formatında güncelleme zamanı

Kod Örnekleri

JavaScript (Fetch API)

javascript
// Döviz kurlarını getir
fetch('https://api.teknikzeka.net/doviz/api.php')
  .then(response => response.json())
  .then(data => {
    if (data.success) {
      console.log(`Güncel Döviz Kurları (${data.date})`);
      data.data.forEach(currency => {
        console.log(`${currency.name} (${currency.code}): Alış ${currency.buy}, Satış ${currency.sell}`);
        console.log(`Değişim: ${currency.change} (${currency.change_direction === 'up' ? '↑' : '↓'})`);
      });
    } else {
      console.error('Veri alınamadı');
    }
  })
  .catch(error => console.error('Bağlantı hatası:', error));

PHP

php
<?php
// Döviz kurlarını getir
$response = file_get_contents('https://api.teknikzeka.net/doviz/api.php');
$data = json_decode($response, true);

if ($data['success']) {
  echo "Güncel Döviz Kurları ({$data['date']})\n";
  foreach ($data['data'] as $currency) {
    echo "{$currency['name']} ({$currency['code']}): ";
    echo "Alış {$currency['buy']}, Satış {$currency['sell']}\n";
    
    $arrow = $currency['change_direction'] === 'up' ? '↑' : '↓';
    echo "Değişim: {$currency['change']} {$arrow}\n";
  }
} else {
  echo "Veri alınamadı\n";
}
?>

Python

python
import requests

# Döviz kurlarını getir
response = requests.get('https://api.teknikzeka.net/doviz/api.php')
data = response.json()

if data['success']:
    print(f"Güncel Döviz Kurları ({data['date']})")
    for currency in data['data']:
        print(f"{currency['name']} ({currency['code']}): "
              f"Alış {currency['buy']}, Satış {currency['sell']}")

        arrow = '↑' if currency['change_direction'] == 'up' else '↓'
        print(f"Değişim: {currency['change']} {arrow}")
else:
    print("Veri alınamadı")

Web Sayfasında Kullanım

HTML ve JavaScript ile web sayfasında döviz kurlarını gösterme örneği:

html
<!DOCTYPE html>
<html>
<head>
    <title>Güncel Döviz Kurları</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <style>
        body {
            font-family: Arial, sans-serif;
            max-width: 800px;
            margin: 0 auto;
            padding: 20px;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }
        th, td {
            padding: 12px;
            text-align: center;
            border-bottom: 1px solid #ddd;
        }
        th {
            background-color: #f2f2f2;
        }
        .up {
            color: green;
        }
        .down {
            color: red;
        }
        .updated {
            font-size: 0.8em;
            color: #666;
        }
    </style>
</head>
<body>
    <h1>Güncel Döviz Kurları</h1>
    <p id="last-updated" class="updated"></p>

    <table>
        <thead>
            <tr>
                <th>Para Birimi</th>
                <th>Alış</th>
                <th>Satış</th>
                <th>Değişim</th>
                <th>Son Güncelleme</th>
            </tr>
        </thead>
        <tbody id="currency-data">
            <tr><td colspan="5">Yükleniyor...</td></tr>
        </tbody>
    </table>

    <script>
        async function loadCurrencies() {
            try {
                const response = await fetch('https://api.teknikzeka.net/doviz/api.php');
                const data = await response.json();
                
                if (data.success) {
                    document.getElementById('last-updated').textContent = 
                        `Son Güncelleme: ${data.date}`;
                    
                    const tableBody = document.getElementById('currency-data');
                    tableBody.innerHTML = '';
                    
                    data.data.forEach(currency => {
                        const row = document.createElement('tr');
                        const changeClass = currency.change_direction === 'up' ? 'up' : 'down';
                        const changeArrow = currency.change_direction === 'up' ? '↑' : '↓';
                        
                        row.innerHTML = `
                            <td><strong>${currency.name}</strong> (${currency.code})</td>
                            <td>${currency.buy}</td>
                            <td>${currency.sell}</td>
                            <td class="${changeClass}">${changeArrow} ${currency.change}</td>
                            <td>${currency.last_update}</td>
                        `;
                        
                        tableBody.appendChild(row);
                    });
                } else {
                    document.getElementById('currency-data').innerHTML = 
                        `<tr><td colspan="5">Veri alınamadı</td></tr>`;
                }
            } catch (error) {
                document.getElementById('currency-data').innerHTML = 
                    `<tr><td colspan="5">Bağlantı hatası: ${error.message}</td></tr>`;
            }
        }
        
        // Sayfa yüklendiğinde kurları getir
        loadCurrencies();
        
        // 5 dakikada bir otomatik güncelle
        setInterval(loadCurrencies, 5 * 60 * 1000);
    </script>
</body>
</html>

Not ve Öneriler

  • API'nin yoğun kullanımı sunucu kaynaklarını tüketebilir, bu nedenle istekleri makul aralıklarla yapın
  • Web uygulamalarında döviz bilgilerini 5-10 dakikada bir güncellemek yeterli olacaktır
  • Virgülle ayrılmış sayıları hesaplamada kullanmak için, virgülü noktaya dönüştürmeyi unutmayın
  • Ticari uygulamalarda gerçek döviz kuru işlemleri için bankaların kendi kurlarını kullanın

Bu API, Türkiye Cumhuriyet Merkez Bankası'nın resmi bir servisi değildir ve teknikzeka.net tarafından sağlanmaktadır. Resmi işlemler için bankaların kendi kurlarını kontrol etmeniz önerilir.