API anahtarını oluştur
API Erişimim ekranında hesabınıza bağlı anahtarı oluşturun. Tam anahtar yalnız üretildiği anda bir kez gösterilir.
RizeDijital'in seçilmiş kamuya açık şehir verilerini kendi web sitenize, mobil uygulamanıza veya sunucu servisinize güvenli ve sürümlü API üzerinden bağlayın. API v1 salt okunur çalışır ve mevcut RizeDijital web/native akışlarından bağımsızdır.
API'yi kullanmak için karmaşık bir SDK kurmanız gerekmez. RizeDijital üyeliğiniz, API anahtarınız ve standart HTTP GET istekleri yeterlidir.
API Erişimim ekranında hesabınıza bağlı anahtarı oluşturun. Tam anahtar yalnız üretildiği anda bir kez gösterilir.
Anahtarı environment variable veya secret manager içinde tutun. Public JavaScript, Git deposu veya mobil binary içine açık metin gömmeyin.
Authorization: Bearer başlığıyla bir servis çağırın ve dönen success / data / meta yapısını işleyin.
https://rizedijital.com/api/v1. Veri endpointleri API anahtarı ister; API kök endpointi servis keşfi için kullanılabilir.API v1 mevcut RizeDijital Core/Service katmanının üzerinde izole bir adaptör olarak çalışır. Web ve native uygulamanın mevcut davranışını değiştirmez.
/api/v1 kontratı mevcut web sayfalarından bağımsız geliştirilir.Her veri isteğinde API anahtarınızı HTTP header ile gönderin. Önerilen yöntem Bearer Token'dır.
Sunucu tarafı entegrasyonlarda standart ve okunabilir yöntem.
Authorization: Bearer rdv1_xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Özel header kullanmak isteyen servisler için eşdeğer yöntem.
X-API-Key: rdv1_xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
?api_key=... desteklenir ancak URL'ler proxy, analytics ve sunucu loglarına yazılabileceğinden önerilmez.Aşağıdaki örnekler aynı hava durumu endpointini çağırır. Gerçek anahtarınızı kaynak koda yazmak yerine ortam değişkeninden okuyun.
curl --request GET \ --url 'https://rizedijital.com/api/v1/hava-durumu?ilce=merkez' \ --header 'Accept: application/json' \ --header 'Authorization: Bearer API_ANAHTARINIZ'
<?php
$apiKey = getenv('RIZEDIJITAL_API_KEY');
$url = 'https://rizedijital.com/api/v1/hava-durumu?ilce=merkez';
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 15,
CURLOPT_HTTPHEADER => [
'Accept: application/json',
'Authorization: Bearer ' . $apiKey,
],
]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$data = json_decode((string) $body, true);
if ($status === 200 && ($data['success'] ?? false)) {
// $data['data'] ile çalışın.
}const apiKey = process.env.RIZEDIJITAL_API_KEY;
const response = await fetch('https://rizedijital.com/api/v1/hava-durumu?ilce=merkez', {
headers: {
Accept: 'application/json',
Authorization: `Bearer ${apiKey}`,
},
});
const payload = await response.json();
if (!response.ok || !payload.success) {
throw new Error(payload.error?.message || 'API isteği başarısız');
}
console.log(payload.data);import os
import requests
api_key = os.environ["RIZEDIJITAL_API_KEY"]
response = requests.get(
"https://rizedijital.com/api/v1/hava-durumu?ilce=merkez",
headers={
"Accept": "application/json",
"Authorization": f"Bearer {api_key}",
},
timeout=15,
)
response.raise_for_status()
payload = response.json()
print(payload["data"])fetch() teknik olarak CORS açıkken çalışabilir; ancak API anahtarının ziyaretçiye görünmesi nedeniyle üretimde anahtarlı çağrıları kendi backend/proxy katmanınızdan yapın.Varsayılan limitler aşağıdadır. Yönetici belirli bir üyeye daha düşük veya daha yüksek özel limit tanımlayabilir.
limit parametresinin üst sınırıX-RateLimit-Limit-MinuteDakikalık toplam hakkınızX-RateLimit-Remaining-Minuteİçinde bulunduğunuz dakika için kalan hakX-RateLimit-Limit-DayGünlük toplam hakkınızX-RateLimit-Remaining-DayBugün için kalan hakRetry-After429 durumunda yeniden denemeden önce beklenmesi önerilen sürepage veya sayfa ile sayfayı, limit ile kayıt sayısını belirleyebilirsiniz. Yanıttaki meta.pagination toplam kayıt, toplam sayfa ve sonraki/önceki sayfa bilgisini döndürür.Yalnız dış sistemlerin tüketmesi mantıklı, kamuya açık veri grupları API'ye açılmıştır. Kartlarda görünen servisler yönetici tarafından şu anda etkin olanlardır.
Rize ilçe ve konum listesi.
/api/v1/konumlarYayındaki RizeDijital haberleri.
/api/v1/haberler/api/v1/haberler/{slug}Şehir ve kurum duyuruları.
/api/v1/duyurular/api/v1/duyurular/{slug}Şehir etkinlikleri ve takvim verisi.
/api/v1/etkinlikler/api/v1/etkinlikler/{slug}İlçe bazlı hava durumu.
/api/v1/hava-durumuGüncel nöbetçi eczane verisi.
/api/v1/eczanelerAktif hastane, tıp merkezi ve acil servis bilgileri.
/api/v1/hastanelerAktif ve doğrulanmış/işaretlenmiş dolmuş hatları.
/api/v1/dolmuslarAktif taksi durağı, transfer ve kamuya açık fiyat bilgileri.
/api/v1/taksi-transferAktif otopark, kapasite, ücret ve konum bilgileri.
/api/v1/otoparklarYerel cache üzerinden yol olayları ve trafik özeti.
/api/v1/yol-durumuRize ilçe bazlı akaryakıt fiyatları.
/api/v1/akaryakitGüncel yaş çay/kuru çay ve alım noktası verisi.
/api/v1/cay-fiyatlariOnaylı yerel işletme rehberi.
/api/v1/isletmeler/api/v1/isletmeler/{kimlik}Yayındaki video kataloğu.
/api/v1/videolar/api/v1/videolar/{slug}Onaylı şehir fotoğraf galerisi.
/api/v1/galeri/api/v1/galeri/{slug}Koordinata göre yakın şehir noktaları.
/api/v1/yakinimdailce=merkez gibi slug veya geçerli ilçe ID'si kullanılabilir. İlçe belirtilmezse ilgili servisin varsayılan davranışı uygulanır.lat ve lng zorunludur. yaricap, kategori, acik=1 ve limit ile sonuç kümesini daraltabilirsiniz.Tüm başarılı veri endpointleri aynı üst seviye sözleşmeyi kullanır: success, data ve meta.
data endpoint'e göre nesne veya liste olabilir. meta her zaman sürüm, request ID ve üretim zamanı taşır.
{
"success": true,
"data": { ... },
"meta": {
"version": "v1",
"request_id": "rdapi_...",
"generated_at": "2026-08-29T18:30:00+03:00"
}
}Liste endpointlerinde meta.pagination eklenir. Böylece istemci URL tahmini yapmak zorunda kalmadan sayfa durumunu bilir.
"pagination": {
"page": 1,
"per_page": 25,
"total": 142,
"total_pages": 6,
"has_next": true,
"has_previous": false
}X-API-VersionYanıtı üreten API sözleşme sürümüX-Request-IdHata ayıklama ve destek taleplerinde kullanılabilecek benzersiz istek kimliğiContent-Type: application/json; charset=utf-8Tüm API v1 cevapları JSON olarak dönerHatalarda HTTP durum koduna ek olarak makine tarafından okunabilir error.code ve geliştiriciye açıklayıcı error.message alanı döner.
{
"success": false,
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "API istek limitiniz aşıldı."
},
"meta": {
"version": "v1",
"request_id": "rdapi_...",
"generated_at": "..."
}
}| HTTP | Kod | Anlamı | Ne yapmalısınız? |
|---|---|---|---|
| 401 | API_KEY_REQUIRED | API anahtarı gönderilmedi. | Bearer veya X-API-Key header ekleyin. |
| 401 | INVALID_API_KEY | Anahtar bulunamadı veya geçersiz. | API Erişimim alanından anahtarı yenileyin. |
| 403 | API_KEY_DISABLED | Anahtar yönetici tarafından pasife alınmış. | Hesap/erişim durumunu kontrol edin. |
| 404 | MODULE_DISABLED | İstenen servis API'de kapalı. | Servis kataloğundaki aktif endpointleri kullanın. |
| 404 | LOCATION_NOT_FOUND | İlçe/konum çözümlenemedi. | /api/v1/konumlar çıktısındaki slug veya ID'yi kullanın. |
| 422 | INVALID_PARAMETER | Parametre desteklenmeyen bir değer taşıyor. | Endpoint parametrelerini kontrol edin. |
| 429 | RATE_LIMIT_EXCEEDED | Dakikalık veya günlük kota aşıldı. | Retry-After ve rate-limit header'larını izleyin. |
| 503 | API_DISABLED | API v1 geçici olarak kapalı. | Daha sonra tekrar deneyin. |
| 503 | MAINTENANCE | RizeDijital bakım modunda. | Retry/backoff stratejisi uygulayın. |
API anahtarı kullanıcı hesabınızı temsil eder. Entegrasyonu üretime almadan önce aşağıdaki kuralları uygulayın.
.env ve secret dosyalarını version control dışında bırakın.X-Request-Id değerini kendi logunuza ekleyin.API anahtarı oluşturmak için RizeDijital üye hesabıyla giriş yapmanız gerekir.