Unauthorized (Yetkisiz) API Erişim Hatası: Sebepleri ve Çözüm Rehberi
Bu Rehber Kimler İçin?
Bu rehberi şu kullanıcı gruplarından biriyseniz okumanızı öneririz:
- Domain Name API REST API'sini doğrudan kendi kodunuzla (cURL, PHP, C#, JavaScript, Python) entegre eden geliştiriciler
- WHMCS, WiseCP, HostBill, Blesta veya ClientExec üzerinden Domain Name API modülünü kullanan bayiler
- Domain Name API'yi ilk kez entegre eden, REST API konusunda deneyimli ama bu API'nin kimlik doğrulama mantığına henüz aşina olmayan ekipler
Teknik bilgiye sahip olabilirsiniz, ama Domain Name API'nin kimlik doğrulama yapısı diğer kullandığınız API'lerden farklı çalışabilir. Bu rehber tam olarak bu farkı netleştirmek için yazıldı.
401 Unauthorized Hatası Nedir?
HTTP 401 Unauthorized, web standartlarına göre tanımlanmış bir istemci hatası kodudur. Bir API'ye gönderdiğiniz istek, sunucu tarafından kimlik doğrulama aşamasında reddedildiğinde bu kod döner. Kısacası: sunucu isteğinizi aldı, ama kim olduğunuzu doğrulayamadı.
Bu, isteğin içeriğiyle (hangi domaini sorguladığınız, hangi işlemi yapmaya çalıştığınız) ilgili bir hata değildir — kimlik bilgilerinizle ilgilidir. Domain Name API bağlamında bu genellikle şu anlama gelir: gönderdiğiniz Reseller ID ve API Key kombinasyonu sistem tarafından geçerli kabul edilmedi.
401 Unauthorized ile 403 Forbidden Arasındaki Fark
Bu iki hata kodu sık karıştırılır çünkü ikisi de bir isteğin reddedildiğini gösterir. Ancak HTTP standardına göre aralarında temel bir fark var: 401, kimliğinizi doğrulayamadığını söyler; 403 ise kimliğinizi doğruladığını ama bu işlem için yetkiniz olmadığını söyler.
Domain Name API'de Kimlik Doğrulama Nasıl Çalışır?
Domain Name API'nin REST API'sine her istek gönderdiğinizde, sistemin kim olduğunuzu anlaması için iki bilgiye birlikte ihtiyacı vardır: Reseller ID ve API Key. Bu ikili, her tekil istekte birlikte gönderilir; biri doğru biri yanlış olduğunda bile istek reddedilir.
Reseller ID ve API Key
Reseller ID: Hangi bayi hesabı adına işlem yapıldığını tanımlayan benzersiz değer. API Key: Bu hesaba erişim için kullanılan kimlik doğrulama anahtarı. Her ikisini de panelinizde Hesabım > Bayi Ayarları > Entegrasyon Bilgileri sayfasından görebilir, gerekirse “Bilgileri E-posta Gönder” butonuyla kayıtlı e-posta adresinize yeniden gönderebilirsiniz.
Live ve Test Ortamı: İki Farklı API Key
Entegrasyon Bilgileri sayfasında iki ayrı API Key görürsünüz: Live Environment API Key ve Test Environment API Key. Live anahtar gerçek domain işlemleri için kullanılır ve bayi hesabınıza fatura edilir; Test anahtarı ise geliştirme ve entegrasyon testleri için kullanılır, ücretlendirilmez ve gerçek kayıt oluşturmaz.
İstek Hacmi: Standart API ve Bulk API Ayrımı
Bu konu doğrudan 401 ile ilgili değildir, ama karıştırılmaması gereken yakın bir konudur: Domain Name API, kullanıcı tetiklemeli gerçek zamanlı istekler için /api, otomatik/yüksek frekanslı istekler için ayrı bir /api-bulk endpoint'i sağlar ve API Key başına saniyede 1 istek limiti uygular. Bu limit aşıldığında dönen kod 401 değil, 429 Too Many Requests'tir — yani kimlik bilgisi sorunuyla karıştırılmamalıdır. 429 alıyorsanız sorun kimlik bilgileriniz değil, istek sıklığınızdır.
IP Whitelist: Ek Bir Güvenlik Katmanı
Reseller ID ve API Key doğru olsa bile, isteğin geldiği sunucu IP adresi panelinizde tanımlı IP Whitelist listesinde değilse istek reddedilebilir. Bu konuyu, gerçek panel ekran görüntüleriyle birlikte bu rehberin 2. bölümünde detaylı olarak ele alacağız.
İlk 5 Yaygın Sebep
Aşağıdaki beş sebep, Unauthorized hatalarının büyük kısmını oluşturur. Her biri için belirti, sebep ve çözümü ayrı ayrı inceliyoruz. Kalan sebepleri (Authorization header hataları, eski modül sürümleri, karakter/kopyalama hataları ve daha fazlası) bu rehberin ilerleyen bölümünde ele alıyoruz.
1) Yanlış veya Eksik API Key
Belirti: Her istekte, domain veya işlem türünden bağımsız olarak sürekli Unauthorized hatası alırsınız.
Sebep: Modülünüze veya kodunuza girilen API Key, panelinizdeki güncel değerle eşleşmiyor. Bu genellikle anahtarın eksik kopyalanması, eski bir anahtarın hâlâ kullanılıyor olması veya anahtar yenilendiğinde uygulamanın güncellenmemesinden kaynaklanır.
Çözüm: Entegrasyon Bilgileri sayfasından güncel API Key'i kopyalayın ve kullandığınız ortama (Live/Test) uygun olanı girdiğinizden emin olun.
2) Yanlış Reseller ID
Belirti: API Key doğru olduğu halde hata devam eder.
Sebep: Reseller ID, API Key kadar kritik bir bileşendir; sistem önce hangi hesaba ait olduğunuzu anlamaya çalışır. Yanlış veya eski bir Reseller ID girilmesi, doğru API Key ile birlikte gönderilse bile isteği geçersiz kılar.
Çözüm: Reseller ID'nizi Entegrasyon Bilgileri sayfasından doğrulayın; özellikle hesap taşıma (migration) sonrası bu değerin değişmiş olabileceğini unutmayın.
3) Reseller ID Alanına E-posta Adresinin Yazılması
Belirti: Modül veya kod, kullanıcı adı alanına panel giriş e-postanızı içeriyor.
Sebep: Bu, kimlik doğrulama hatalarının en sık görülen tek nedenidir. Bazı kullanıcılar “Kullanıcı Adı” alanını panele giriş yaptıkları e-posta adresiyle dolduruyor; ancak Domain Name API bu alanda e-posta değil, Reseller ID bekler. Bu konuyu, ilişkili “Reseller Not Found” hatasını ele alan ayrı rehberimizde de detaylı olarak işliyoruz.
Çözüm: İlgili alana e-posta adresinizi değil, Entegrasyon Bilgileri sayfasındaki gerçek Reseller ID'yi girin.
4) Sunucu IP Adresinin IP Whitelist'e Eklenmemiş Olması
Belirti: Kimlik bilgileri kontrol edilip doğrulandığı halde hata devam ediyor; özellikle yeni bir sunucuya taşındıktan veya Cloudflare/yük dengeleyici gibi bir katman eklendikten sonra başlamış.
Sebep: Reseller ID ve API Key panelinizde IP Whitelist özelliğiyle birlikte kullanılabilir. Whitelist aktifse ve isteğin geldiği IP listede değilse, kimlik bilgileri doğru olsa bile istek reddedilir.
Çözüm: Sunucunuzun güncel çıkış IP adresini Bayi Ayarları > Bayi Yapılandırmaları sekmesindeki IP Whitelist bölümüne ekleyin. Bu konuyu az sonra ekran görüntüleriyle adım adım gösteriyoruz.
5) Live / Test Ortam Karışıklığı
Belirti: Bazı istekler çalışıyor, bazıları Unauthorized dönüyor; veya entegrasyon test sırasında çalışıp canlıya geçince bozuluyor.
Sebep: Test Environment API Key ile Live ortam endpoint'ine (veya Live API Key ile Test ortamına) istek gönderilmesi, anahtarın kendisi geçerli olsa bile reddedilmesine yol açar.
Çözüm: Kullandığınız API Key'in hangi ortama ait olduğunu (Entegrasyon Bilgileri sayfasında Live/Test olarak ayrı ayrı listelenir) ve kodunuzdaki endpoint'in bu ortamla eşleştiğini doğrulayın.
IP Whitelist: IP Adresi Nasıl Eklenir?
Bölüm 1'de listelediğimiz beşinci sebep — sunucu IP adresinin whitelist'e eklenmemiş olması — pratikte en kolay çözülen ama en kolay unutulan sebeptir. Reseller ID ve API Key'iniz kusursuz olsa bile, whitelist aktifse ve isteğin geldiği IP listede değilse istek reddedilir. Bu bölümde IP'yi nereden ve nasıl ekleyeceğinizi gerçek panel görünümü üzerinden gösteriyoruz.
Adım Adım: IP Whitelist'e IP Ekleme
- Reseller panelinize giriş yapın.
- Sol menüden Hesabım sekmesini açın.
- Bayi Ayarları'na tıklayın.
- Açılan sayfada üstteki üç sekmeden Bayi Yapılandırmaları sekmesini seçin.
- Sayfayı aşağı kaydırın; Varsayılan Name Server Bilgileri bölümünün altında IP Whitelist bölümünü göreceksiniz.
- “IP Address” alanına, API isteklerini gönderecek sunucunun genel (public) çıkış IP adresini girin.
- Birden fazla sunucudan istek gönderiyorsanız “+ IP Adresi Ekle” butonuna tıklayıp yeni bir satır açın ve diğer IP'yi de girin.
- Kaydet butonuna tıklayın.

Bir IP'yi Listeden Kaldırma
Her IP satırının yanındaki çöp kutusu simgesine tıklayıp ardından Kaydet'e basarak ilgili IP'yi whitelist'ten çıkarabilirsiniz.
Doğru IP'yi Nasıl Bulursunuz?
Kod doğrudan kendi sunucunuzdan (VPS, dedicated server, shared hosting) çalışıyorsa, o sunucunun genel IP adresini eklemeniz gerekir. Sunucunuzda terminal üzerinden genel bir ağ komutuyla (örneğin bir IP sorgu servisine curl ile istek atarak) bu adresi öğrenebilirsiniz.
Sunucunuz bir NAT (Network Address Translation) arkasındaysa — yani birden fazla sunucu/cihaz aynı ortak çıkışı paylaşıyorsa — whitelist'e eklemeniz gereken IP, sunucunuzun iç (private) IP'si değil, NAT'ın dışa açılan ortak (public) IP'sidir.
Cloudflare, bir yük dengeleyici (load balancer) veya ters proxy kullanıyorsanız, isteğin Domain Name API'ye gerçekte hangi IP üzerinden ulaştığını kontrol etmeniz gerekir; bu, kendi tarayıcınızda gördüğünüz IP'den farklı olabilir.
IP Değişirse Ne Olur?
Bulut sunucu sağlayıcıları (AWS, Google Cloud, Azure vb.) bazı yapılandırmalarda dinamik IP atayabilir; sunucu yeniden başlatıldığında veya otomatik ölçeklendirme (auto-scaling) tetiklendiğinde genel IP değişebilir. IP değiştiği anda eski whitelist kaydı artık geçerli değildir ve Reseller ID ile API Key'iniz hiç değişmemiş olsa bile tüm istekler yeniden Unauthorized hatasıyla reddedilmeye başlar.
Bunu önlemek için mümkünse sabit/statik bir IP kullanmanızı (örneğin bulut sağlayıcınızın elastik IP özelliğini), IP'niz değişebiliyorsa da whitelist'i güncel tutmak için bir kontrol alışkanlığı edinmenizi öneririz.
Kalan Yaygın Sebepler (6-10)
6) Authorization Header'ın Eksik veya Yanlış Gönderilmesi
Belirti: İstek genel olarak doğru görünüyor, ama yine de kimlik doğrulama aşamasında reddediliyor.
Sebep: Birçok geliştirici, başka REST API'lerde sık kullanılan standart bir kalıbı (örneğin genel bir “Authorization” header şablonunu) doğrudan kopyalayıp buraya uygulamaya çalışır. Domain Name API'nin tam olarak hangi alanı header'da, hangi alanı istek gövdesinde beklediği, kullandığınız endpoint'e göre değişebilir.
Çözüm: Kendi hesabınıza ait kimlik bilgileriyle birebir eşleşen örnek isteği görmek için Production Swagger dokümantasyonını (api.domainresellerapi.com/swagger) veya Test/OT&E dokümantasyonını (ote.domainresellerapi.com/swagger) kontrol edin; bu dokümantasyon her endpoint için beklenen tam alan adlarını gösterir.
7) Genel REST Alışkanlığıyla Bearer Token Denemek
Belirti: Authorization: Bearer <token> şeklinde bir header eklediniz, ama hâlâ Unauthorized alıyorsunuz.
Sebep: Bearer token modeli birçok modern REST API'de standarttır, ama bu Domain Name API'nin kimlik doğrulama modeliyle aynı olduğu anlamına gelmez. Reseller ID ve API Key'in bekleneni biçimde (header, body veya query parametresi olarak — endpoint'e göre değişir) gönderilmesi gerekir; bunun yerine genel bir Bearer şablonu eklemek isteği değiştirmez, sadece gereksiz bir header eklemiş olursunuz.
Çözüm: Bearer şablonunu kaldırın; Swagger dokümantasyonundaki örnek isteği birebir takip edin.
Authorization: Bearer xxxxxxxxxxxxxxxx
✅ Doğru yaklaşım:
Swagger dokümantasyonunda (api.domainresellerapi.com/swagger) ilgili endpoint için gösterilen örnek isteği birebir kullanın.
8) Eski veya Güncellenmemiş Modül Sürümü
Belirti: WHMCS, WiseCP, HostBill, Blesta veya ClientExec üzerinden çalışıyorsunuz ve hata belirli bir güncellemeden sonra başladı (veya hiç güncelleme yapmadınız).
Sebep: Eski bir modül sürümü, kimlik bilgilerini API'nin artık beklemediği eski bir formatta veya eski bir parametre adıyla gönderebilir.
Çözüm: GitHub'daki domainreseller organizasyonundan (github.com/domainreseller) panelinize uygun modülün güncel sürümünü indirip kurun, ardından Reseller ID ve API Key'i yeniden kaydedin.
9) Kopyalama Hatası veya Görünmez Karakter
Belirti: Kimlik bilgileri “gözle bakınca doğru” görünüyor, ama hâlâ reddediliyor.
Sebep: API Key veya Reseller ID kopyalanırken başına/sonuna fazladan boşluk veya görünmez bir karakter eklenmesi, değeri görünüşte aynı ama sistem için geçersiz hale getirir.
Çözüm: Değeri panelden tekrar kopyalayıp doğrudan ilgili alana yapıştırın; şüpheniz varsa elle yeniden yazın.
10) Yanlış Content-Type Header
Belirti: İstek gövdesi doğru görünüyor, ama sunucu isteği hiç doğru ayrıştıramıyor (parse edemiyor) gibi davranıyor.
Sebep: REST API'lere JSON gövdeli istek gönderirken Content-Type header'ının uygulamanızın gönderdiği formatla eşleşmemesi (örneğin gövde JSON olduğu halde header'da application/x-www-form-urlencoded yazması), sunucunun isteği doğru şekilde işleyememesine ve kimlik bilgilerini hiç okuyamamasına yol açabilir.
Çözüm: HTTP istemcinizin gönderdiği gerçek Content-Type değerini bir ağ izleme aracıyla (örneğin tarayıcı geliştirici araçları veya Postman) doğrulayın ve Swagger dokümantasyonundaki beklenen değerle karşılaştırın.
Kod Örnekleri: cURL, PHP, C#, JavaScript, Python
Domain Name API'nin resmî dokümantasyonu, kimlik bilgilerinin (Reseller ID ve API Key) her istekte birlikte gönderilmesi gerektiğini doğrular, ancak her endpoint için tam alan adlarını ve bunların header mı, body mi yoksa query parametresi mi olduğunu interaktif Swagger dokümantasyonu üzerinden gösterir. Bu nedenle aşağıdaki örnekleri kasıtlı olarak şablon/iskelet seviyesinde tutuyoruz; gerçek alan adlarını kendi Swagger dokümantasyonunuzdan (Production: api.domainresellerapi.com/swagger, Test/OT&E: ote.domainresellerapi.com/swagger) teyit etmenizi öneririz. Bu, yanlış bir header adı icat edip entegrasyonunuzu daha da karıştırmaktan çok daha güvenlidir.
cURL
# Reseller ID ve API Key'i kendi Swagger dokümantasyonunuzdaki
# alan adlarıyla değiştirin (header, body veya query parametresi olabilir)
curl -X POST "https://api.domainresellerapi.com/.../checkdomain" \
-H "Content-Type: application/json" \
-d '{
"resellerId": "YOUR_RESELLER_ID",
"apiKey": "YOUR_API_KEY",
"domain": "exampledomain.com"
}'
PHP
// Kimlik bilgilerini ortam değişkenlerinden okuyun, koda gömmeyin
$resellerId = getenv('DOMAINNAMEAPI_RESELLER_ID');
$apiKey = getenv('DOMAINNAMEAPI_KEY');
// Alan adlarını kendi Swagger dokümantasyonunuzla teyit edin
$payload = [
'resellerId' => $resellerId,
'apiKey' => $apiKey,
'domain' => 'exampledomain.com',
];
$response = $client->checkDomain($payload);
C#
// Kimlik bilgilerini ortam değişkenlerinden veya güvenli bir
// secrets store'dan okuyun
var resellerId = Environment.GetEnvironmentVariable("DOMAINNAMEAPI_RESELLER_ID");
var apiKey = Environment.GetEnvironmentVariable("DOMAINNAMEAPI_KEY");
// Alan adlarını ve gönderim şeklini (header/body) Swagger
// dokümantasyonunuzdan teyit edin
var payload = new {
resellerId = resellerId,
apiKey = apiKey,
domain = "exampledomain.com"
};
JavaScript (Node.js)
// Kimlik bilgilerini .env dosyasından okuyun
const resellerId = process.env.DOMAINNAMEAPI_RESELLER_ID;
const apiKey = process.env.DOMAINNAMEAPI_KEY;
// Alan adlarını kendi Swagger dokümantasyonunuzla teyit edin
const payload = {
resellerId,
apiKey,
domain: "exampledomain.com",
};
Python
import os
# Kimlik bilgilerini ortam değişkenlerinden okuyun
reseller_id = os.environ.get("DOMAINNAMEAPI_RESELLER_ID")
api_key = os.environ.get("DOMAINNAMEAPI_KEY")
# Alan adlarını kendi Swagger dokümantasyonunuzla teyit edin
payload = {
"resellerId": reseller_id,
"apiKey": api_key,
"domain": "exampledomain.com",
}
Neden Tam Bir cURL/JSON Örneği Vermiyoruz?
Çünkü yanlış bir header veya alan adı icat edip “resmî örnek” gibi sunmak, gerçek entegrasyonunuzda zaman kaybettirir ve bu rehberin amacına ters düşer. Kendi hesabınıza özel, hatasız çalışan tam örnek istek için Swagger dokümantasyonu (api.domainresellerapi.com/swagger veya ote.domainresellerapi.com/swagger) en güvenilir kaynaktır.
5 Dakikada Hızlı Çözüm Kontrol Listesi
Destek talebi açmadan önce bu listeyi sırayla uygulayın; vakaların büyük kısmı bu maddelerle çözülür:
- API Key doğru kopyalandı mı, kullandığınız ortama (Live/Test) uygun mu?
- Reseller ID doğru ve güncel mi?
- Kullanıcı adı alanına yanlışlıkla e-posta adresi mi yazıldı?
- Live ve Test ortam bilgileri birbirine karışmış mı?
- Sunucunuzun güncel çıkış IP'si IP Whitelist'te kayıtlı mı?
- Sunucu/bulut sağlayıcı IP'niz son zamanlarda değişti mi (yeniden başlatma, ölçeklendirme, sağlayıcı değişikliği)?
- İsteğinizdeki alan adları ve header'lar Swagger dokümantasyonuyla eşleşiyor mu?
- Kullandığınız modül (WHMCS/WiseCP/HostBill/Blesta/ClientExec) güncel sürümde mi?
Güvenlik Tavsiyeleri
Aşağıdaki öneriler, Domain Name API'nin kendi API Key güvenliği rehberinde de yer alan, kimlik bilgilerinizi korumanın temel kurallarıdır:
- API Key'i ortam değişkenlerinde (.env) saklayın, asla kaynak koda gömmeyin.
- Mümkün olan her yerde IP Whitelist kullanarak API çağrılarını güvenilir sunucularla sınırlayın.
- API Key'inizi düzenli aralıklarla yenileyin (rotate edin).
- Aynı API Key'i birden fazla uygulama veya ekip arasında paylaşmayın.
- API Key'i e-posta, mesajlaşma uygulaması veya ekran görüntüsü üzerinden asla paylaşmayın.
- API Key içeren dosyaları herkese açık (public) bir repodaki .gitignore listesine eklemeyi unutmayın.
İlgili Kaynaklar
Bu hatayla yakından ilişkili, bilgi bankanızda zaten yayında olan diğer rehberler:
- Reseller Not Found Hatası ve Açıklaması
- Domain Name API Hız Sınırı, Throttling ve Toplu Kullanım Politikası
- Geçiş Sonrası Entegrasyon Rehberi
Sık Sorulan Sorular
401 Unauthorized hatasını neden alıyorum?
Bu hata, gönderdiğiniz Reseller ID ve API Key kombinasyonunun sistem tarafından geçerli kabul edilmediğini gösterir. En sık sebepler yanlış/eksik kimlik bilgileri, Reseller ID alanına e-posta yazılması ve sunucu IP'nizin Whitelist'te olmamasıdır.
401 ile 403 arasındaki fark nedir?
401, kimliğinizin doğrulanamadığını; 403 ise kimliğinizin doğrulandığını ama bu işlem için yetkiniz olmadığını gösterir. Domain Name API'de kimlik bilgisi sorunları pratikte 401 olarak görülür.
Bearer token kullanmalı mıyım?
Genel bir Bearer şablonu eklemek isteği değiştirmez. Reseller ID ve API Key'in beklenen biçimde gönderilmesi gerekir; bunun tam formatı endpoint'e göre Swagger dokümantasyonunda tanımlıdır.
API Key nasıl yenilenir?
Entegrasyon Bilgileri sayfasından mevcut anahtarı görüntüleyebilir, anahtarın ele geçirildiğini düşünüyorsanız destek ekibinizden yenileme (rotation) talep edebilirsiniz.
Reseller ID'mi nerede bulurum?
Hesabım > Bayi Ayarları > Entegrasyon Bilgileri sayfasında görüntülenir; “Bilgileri E-posta Gönder” butonuyla kayıtlı e-postanıza da gönderebilirsiniz.
IP Whitelist tamamen boş bırakılırsa ne olur?
Bu davranış kaynaklarımızda açıkça belirtilmiyor; boşaltmadan önce destek ekibinize sorup teyit almanızı öneririz.
Cloudflare kullanıyorsam hangi IP'yi eklemeliyim?
İsteğin Domain Name API'ye gerçekte hangi IP üzerinden ulaştığını kontrol etmeniz gerekir; bu, tarayıcınızda gördüğünüz IP'den farklı olabilir.
NAT arkasında bir sunucu kullanıyorum, ne yapmalıyım?
Whitelist'e eklemeniz gereken IP, sunucunun iç (private) IP'si değil, NAT'ın dışa açılan ortak (public) IP'sidir.
Load Balancer kullanıyorum, bu durumu etkiler mi?
Evet; isteğiniz yük dengeleyiciden çıkarken hangi genel IP'yi kullandığını belirleyip o IP'yi whitelist'e eklemeniz gerekir.
Shared hosting üzerinden çalışıyorum, IP Whitelist mümkün mü?
Mümkündür, ama paylaşımlı barındırmada genel çıkış IP'si sağlayıcınıza göre değişebilir veya paylaşılan olabilir; sağlayıcınızdan sunucunuzun sabit genel IP'sini teyit edin.
WHMCS modülüm neden çalışmıyor?
Aynı kök sebepler geçerlidir: yanlış Reseller ID/API Key, IP Whitelist eksikliği veya eski modül sürümü. Modülünüzü güncel sürüme yükseltip kimlik bilgilerini yeniden kaydedin.
WiseCP modülüm neden çalışmıyor?
WiseCP'de de aynı kimlik doğrulama mantığı geçerlidir; Reseller ID'nin kullanıcı adı alanına, API Key'in şifre alanına doğru girildiğinden emin olun.
Authentication Failed mesajı Unauthorized ile aynı mı?
Pratikte aynı kök nedene işaret eder: kimlik doğrulama başarısız olmuştur. Tam mesaj metni endpoint'e göre değişebilir, ama çözüm yaklaşımı aynıdır.
Unauthorized ile Invalid API Key aynı şey mi?
Yakından ilişkilidir ama aynı değildir. Invalid API Key spesifik olarak anahtarın geçersizliğine işaret eder; Unauthorized/Access Denied daha genel bir kimlik doğrulama reddini ifade edebilir (yanlış Reseller ID, IP Whitelist eksikliği gibi sebepleri de kapsar).
Test ortamında çalışan kod, canlıya geçince neden bozuluyor?
Genellikle Live ve Test ortam API Key'lerinin veya endpoint'lerinin karıştırılmasından kaynaklanır. Kullandığınız anahtarın ortamıyla endpoint'in eşleştiğini doğrulayın.
Modülümü güncellemek Reseller ID veya API Key'imi değiştirir mi?
Hayır. Modül güncellemesi sadece panel ile API arasındaki bağlantı katmanını günceller; kimlik bilgileriniz bu işlemden etkilenmez.
429 Too Many Requests, 401 Unauthorized ile aynı mı?
Hayır. 429, istek sıklığı limitini (saniyede 1 istek/API Key) aştığınızı gösterir; kimlik bilgilerinizle ilgisi yoktur. 401 ise kimlik doğrulama sorunudur.
Birden fazla sunucudan istek gönderiyorum, her birini whitelist'e eklemeli miyim?
Evet. IP Whitelist aktifse, istek gönderecek her sunucunun genel çıkış IP'sinin listede olması gerekir.
API Key'imi yanlışlıkla paylaştım, ne yapmalıyım?
Hemen destek ekibinizle iletişime geçip anahtar yenileme talep edin ve tüm uygulamalarınızı yeni anahtarla güncelleyin.
Sandbox ortamında test etmek zorunlu mu?
Zorunlu değil, ama şiddetle önerilir. Test ortamı gerçek kayıt oluşturmaz ve ücretlendirilmez; entegrasyonunuzu canlıya geçmeden güvenle doğrulamanızı sağlar.
Sonuç
Unauthorized hatası, Domain Name API'nin gönderdiğiniz kimlik bilgilerini doğrulayamadığını gösteren bir kimlik doğrulama hatasıdır; sunucu veya domain ile ilgili bir arıza değildir. Çözüm her zaman üç noktada aranır: Reseller ID, API Key ve IP Whitelist. Bu rehberdeki sırayı takip ettiğinizde — önce kimlik bilgilerini, sonra ortamı (Live/Test), sonra IP Whitelist'i kontrol ederek — sorunu genellikle birkaç dakika içinde çözebilirsiniz.
Sorun yukarıdaki tüm kontrollere rağmen sürüyorsa, isteğinize ait log kayıtlarıyla birlikte destek ekibimize başvurmanız en hızlı çözüm yoludur.
Domain Name API REST API ile Güvenli Entegrasyon Yapın
- Ücretsiz bayi hesabı, aktivasyon ücreti veya minimum depozito şartı yok
- Sandbox (Test/OT&E) ortamında riske girmeden test edebilirsiniz
- REST API yanında WHMCS, WiseCP, HostBill, Blesta ve ClientExec için hazır modüller
- 200'den fazla ülkede 40.000'den fazla bayi tarafından kullanılan altyapı
- 7/24 teknik destek: ticket, telefon ve canlı destek
Entegrasyon sırasında herhangi bir sorunuz olursa teknik ekibimiz size yardımcı olmaktan memnuniyet duyar.
