Skip to content

altinapi/altinapi-php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

altinapi — Türkiye Altın & Döviz Fiyat API'si (PHP SDK)

Packagist Version Packagist Downloads PHP Version License: MIT

altinapi için resmi PHP SDK

Gerçek zamanlı altın fiyatları, döviz kurları, gümüş, platin, paladyum ve sarrafiye verisi — REST API ve WebSocket ile.


🎯 Harem Altın ile Birebir Aynı Fiyat Verisi

altinapi, Harem Altın ile aynı veri sağlayıcısından beslenir. Bu sayede uygulamanızda gösterdiğiniz fiyatlar, Harem Altın'da görünen fiyatlarla %100 örtüşür.

⚖️ Yasal not: altinapi bağımsız bir servistir. Harem Altın ile ortaklığı, iştiraki veya organik bir bağı yoktur. "Harem Altın" tescilli bir markadır; burada yalnızca veri kaynağının aynılığını belirtmek amacıyla karşılaştırma yapılmaktadır.

🔑 Ücretsiz API key al →


🚀 Niye altinapi?

altinapi Diğer altın fiyat API'leri
Veri kaynağı Harem Altın ile aynı feed Genelde LBMA / international ons
Sarrafiye desteği ✅ Çeyrek, yarım, tam, ata, gremese ❌ Yok
22/14 ayar ✅ Var ❌ Yok
Gram altın (5/10/20/50/100 gr) ✅ Var ❌ Yok
Türk lirası pariteleri ✅ 15+ döviz ⚠️ Sınırlı
Gecikme <1 saniye 5-60 saniye (REST polling)
WebSocket ✅ Socket.io ⚠️ Genellikle yok
Fiyatlandırma $0 - $99/ay $50 - $500/ay

📦 Özellikler

  • 🥇 250+ sembol — Altın (gram & ons), gümüş, platin, paladyum, sarrafiye, döviz, parite
  • <1 saniye gecikme — Socket.io WebSocket ile anlık güncellemeler
  • 🐘 PHP 8.0+ — Modern PHP, strict types, readonly properties
  • 🌐 REST + WebSocket — Tek pakette
  • 🪶 Guzzle + ElephantIO — İki kanıtlanmış bağımlılık
  • PSR-4 — Composer ile bir komutta kurulum

📥 Kurulum

composer require altinapi/altinapi

⚡ Hızlı Başlangıç

REST API — Anlık Fiyat Sorgusu

<?php
require 'vendor/autoload.php';

use Altinapi\AltinapiClient;

$client = new AltinapiClient(['apiKey' => 'hapi_API_KEYINIZ']);

// Tüm fiyatlar (Harem Altın ile aynı veri)
$tumu = $client->getAllPrices();
echo "Toplam sembol: " . count($tumu['data']) . "\n";

// Kategori bazlı — sadece döviz
$doviz = $client->getPricesByCategory('DOVIZ');
foreach ($doviz['data'] as $f) {
    echo "{$f['symbol']}: {$f['bid']} / {$f['ask']}\n";
}

// Tek sembol — gram altın
$altin = $client->getPrice('ALTIN');
echo "Altın: {$altin['bid']}{$altin['ask']} TL/gram\n";

// Sarrafiye — çeyrek altın
$ceyrek = $client->getPrice('CEYREK_YENI');
echo "Çeyrek altın: {$ceyrek['bid']}{$ceyrek['ask']} TL\n";

WebSocket — Gerçek Zamanlı Akış

<?php
require 'vendor/autoload.php';

use Altinapi\AltinapiClient;

$client = new AltinapiClient(['apiKey' => 'hapi_API_KEYINIZ']);

$client->on('connect', function () {
    echo "✅ Bağlandı\n";
});

$client->on('prices:snapshot', function (array $fiyatlar) {
    echo "İlk snapshot: " . count($fiyatlar) . " sembol\n";
});

$client->on('prices:update', function (array $guncellemeler) {
    foreach ($guncellemeler as $f) {
        // Harem Altın değişir değişmez sen de bilirsin
        echo "{$f['symbol']}: {$f['bid']} / {$f['ask']}\n";
    }
});

$client->on('data:stale', fn() => print("⚠️  Kaynak bağlantısı koptu\n"));
$client->on('data:live', fn() => print("✅ Kaynak bağlantısı geri geldi\n"));

$client->connect();
$client->subscribe(['USDTRY', 'ALTIN', 'CEYREK_YENI']);
$client->listen(60); // 60 saniye dinle
$client->disconnect();

Not: PHP'de native event loop olmadığı için WebSocket dinleme listen($saniye) ile bloklayıcı çalışır. Uzun süreli bir worker process için Supervisor, systemd veya benzeri bir process manager kullanın.


🏷️ Sembol Kategorileri

Kategori Açıklama Örnekler
DOVIZ Döviz kurları USDTRY, EURTRY, GBPTRY, CHFTRY
MADEN Değerli metaller ALTIN, XAUUSD, GUMUSD, PLATIN, PALADYUM
GRAM ALTIN Ağırlığa göre altın 5 GR GRAM ALTIN, 10 GR GRAM ALTIN, ...
SARRAFIYE Türk sarrafiye altınları CEYREK_YENI, YARIM_YENI, TEK_YENI, ATA_YENI, AYAR22
PARITE Uluslararası pariteler EURUSD, GBPUSD, USDJPY

Tüm sembol listesi →


📚 Kullanım Senaryoları

altinapi şu senaryolarda kullanılır:

  • Laravel / Symfony backend'leri — Anlık altın ve döviz fiyatlarını veritabanına cache'leyip API endpoint'ten sunmak
  • Kuyumcu yazılımları — Stok yönetiminde gerçek zamanlı altın fiyatı kullanmak
  • WordPress eklentileri — Haber, finans, kuyumcu sitelerine canlı fiyat widget'ı
  • Mağaza panelleri — Magento, OpenCart altın takı fiyat güncellemeleri
  • Cron raporları — Günlük altın fiyat raporu / e-posta bülteni
  • WhatsApp / Telegram botları — Twilio + altinapi ile fiyat bildirimi
  • API gateway / mikroservis — Symfony Messenger ile event-driven fiyat akışı

📖 API Referansı

new AltinapiClient(array $options)

Parametre Tip Varsayılan Zorunlu
apiKey string
baseUrl string https://altinapi.com/api/v1
socketUrl string https://altinapi.com
timeout float (sn) 10.0

REST Metotları

Metot Dönüş Açıklama
getAllPrices() array Tüm sembolleri getirir
getPricesByCategory(string $c) array Kategori bazlı filtre
getPrice(string $symbol) array Tek sembol fiyatı

WebSocket Metotları

Metot Açıklama
connect() Socket.io bağlantısı açar
disconnect() Bağlantıyı kapatır
subscribe(array $symbols) Belirli sembollere abone olur
unsubscribe(array $symbols) Aboneliği iptal eder
on(string $event, callable $h) Handler bağlar
off(string $event, ?callable $h) Handler kaldırır
listen(float $seconds) Bloklayıcı dinleme
isConnected(): bool Bağlantı durumu

WebSocket Eventleri

Event Veri Ne zaman
connect Bağlantı kuruldu
disconnect Bağlantı kapandı
prices:snapshot array (Price list) Bağlantı anında — tüm güncel fiyatlar
prices:update array (Price list) Fiyat değişiminde
data:stale Kaynak bağlantısı koptu
data:live Kaynak yeniden bağlandı
connect_error \Throwable Bağlantı hatası

⚠️ Hata Yönetimi

use Altinapi\AltinapiClient;
use Altinapi\AltinapiError;

$client = new AltinapiClient(['apiKey' => 'hapi_xxx']);
try {
    $client->getPrice('GECERSIZ');
} catch (AltinapiError $err) {
    echo "[{$err->statusCode}] {$err->getMessage()}\n";
}
Kod Anlamı
401 API key eksik veya geçersiz
403 Abonelik aktif değil
404 Sembol veya kategori bulunamadı
429 Rate limit aşıldı
503 Kaynak bağlantısı kesildi (eski veri)

💰 Plan Limitleri

Plan REST WebSocket bağlantı
Ücretsiz Deneme 30 / ay
Starter 30 / dakika
Pro 60 / dakika 3
Enterprise Özel 10

Fiyatlandırma →


📂 Örnekler

Çalıştırılabilir örnekler /examples klasöründe:

ALTINAPI_KEY=hapi_xxx php examples/rest.php
ALTINAPI_KEY=hapi_xxx php examples/websocket.php

🧪 Test

composer install
composer test

❓ Sık Sorulan Sorular

Bu Harem Altın'ın resmi API'si mi?

Hayır. altinapi bağımsız bir servistir. Harem Altın ile ortaklığı, iştiraki veya organik bir bağı yoktur. Fiyatlar birebir örtüşür çünkü aynı veri sağlayıcısından beslenir.

"Harem Altın API'si" arıyorum, bu uygun mu?

altinapi, "Harem Altın API'si" arayan geliştiriciler için bağımsız bir alternatif olarak konumlandırılır. Harem Altın'ın kendisi geliştiricilere açık resmi bir API sunmadığı için, aynı fiyat verisine ihtiyaç duyan uygulamalar altinapi'yi kullanır.

Laravel'de nasıl entegre ederim?

Doğrudan composer require altinapi/altinapi sonrası app/Services/AltinapiService.php içinde sarmalayabilir, AppServiceProvider üzerinden singleton olarak bind edebilirsiniz.

Veri ne kadar günceldir?

Fiyat değişikliklerinin sunucumuza ulaşması ile size iletilmesi arasındaki gecikme 1 saniyenin altındadır.

TCMB resmi kurları da var mı?

Şu an feed'imizde TCMB resmi kurları yer almıyor. İhtiyacınıza göre custom plan talep edebilirsiniz: support@altinapi.com


🏷️ Bu Paketin Aranabilirliği

altinapi paketi şu aramalar için tasarlanmıştır:

altın fiyat API · altın fiyatları API · gram altın API · çeyrek altın API · sarrafiye API · döviz kuru API · döviz fiyat API · USDTRY API · EURTRY API · gerçek zamanlı altın fiyat · canlı altın fiyat API · Türkiye altın API · ons altın API · gümüş fiyat API · platin fiyat API · paladyum fiyat API · kuyumcu yazılımı API · altın takip uygulaması · Harem Altın benzeri API · Harem Altın alternatif API · Harem API · Türkiye finans API · PHP altın API · PHP gold API · Turkish gold price API · websocket altın akışı · Laravel altın API · Symfony altın API


🤝 Katkıda Bulunma

Issue ve pull request'leriniz için: github.com/altinapi/altinapi-php


📄 Lisans

MIT © altinapi


🔗 Bağlantılar


Yasal Bildirim: altinapi bağımsız bir hizmettir. "Harem Altın" tescilli bir markadır ve bu pakette yalnızca veri kaynağının aynılığını belirtmek amacıyla — karşılaştırma ve bilgilendirme amaçlı (nominative fair use) — kullanılmıştır. Marka sahibi ile herhangi bir ortaklık, iştirak veya destekleme ilişkisi yoktur.

About

🇹🇷 Harem Altın ile aynı veri | Türkiye'nin gerçek zamanlı altın, döviz, gümüş, platin & sarrafiye fiyat API'si — REST + WebSocket | Resmi PHP SDK

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages