OAuth kılavuzu
Tüm API çağrıları yetkilendirme gerektirir ve yetkilendirilmiş bir Ahrefs kullanıcısı adına yapılır. Bunu yapmak için uygulamanızın o kullanıcı için bir API erişim belirteci alması gerekir.
Ahrefs Connect, PKCE (Kod Değişimi için Kanıt Anahtarı) ile OAuth 2.0 Yetkilendirme Kodu Akışı kullanır. Süreç iki ana adımdan oluşur:
1. Uygulamayı yetkilendirin
Kullanıcıyı şuraya yönlendirin:
https://app.ahrefs.com/web/oauth/authorize?response_type=code&client_id={client_id}&scope=apiv3-integration-apps&redirect_uri={redirect_uri}&code_challenge={code_challenge}&code_challenge_method=s256&state={state}
Parametreler:
{client_id}: Hesap ayarlarınız içindeki Ahrefs Connect bölümünden URL kodlamalı İstemci Kimliği.{redirect_uri}: Aynı bölümde kaydettiğiniz URL kodlamalı Yönlendirme URI'si.{code_challenge}: S256 yöntemi kullanılarak bir kod doğrulayıcıdan türetilir:- Bir kod doğrulayıcı oluşturun — kriptografik olarak güvenli bir üreticiyle 43–128 karakterlik rastgele bir dize. İzin verilen karakterler:
[A-Z] [a-z] [0-9] - . _ ~(bkz. RFC7636 Bölüm 4.1). - Kod doğrulayıcının SHA-256 hash'ini hesaplayın.
- Hash'i Base64-URL ile kodlayın.
- Bu kodlanmış değeri
code_challengeolarak kullanın (bkz. RFC7636 Bölüm 4.2).
- Bir kod doğrulayıcı oluşturun — kriptografik olarak güvenli bir üreticiyle 43–128 karakterlik rastgele bir dize. İzin verilen karakterler:
{state}: İstek ile geri çağrı arasında durumu korumak için opak bir değer üretin. Yetkilendirme sunucusu, kullanıcıyı uygulamanıza geri yönlendirirken bu değeri ekleyecektir. (bkz. RFC6749 Bölüm 4.1.1)

Kullanıcı deneyimi:
- Kullanıcı, Ahrefs yetkilendirme onay ekranını görür.
- Ahrefs API’sine kendi adlarına erişebilmesi için uygulamanıza izin verirler.
- Ahrefs, onları şunlarla birlikte Redirect URI’nize yönlendirir:
codeparametresi — 2. Adımda kullanılırstateparametresi — özgün isteğinizle eşleştiğini doğrulayın.
2. access_token değerini alın
code değerini access_token ile değiştirmek için https://ahrefs.com/oauth/token adresine bir POST isteği gönderin.
application/x-www-form-urlencoded biçimini kullanarak istek gövdesine parametreleri gönderin (bkz. RFC6749 Bölüm 4.1.3):
grant_type:authorization_codeclient_id:{client_id}(1. Adımdakiyle aynı olmalıdır)redirect_uri:{redirect_uri}(1. Adımdakiyle aynı olmalıdır)code:{code}(1. Adımdan)code_verifier:{original_code_verifier}(1. Adımdaki dönüştürülmemiş değer)client_secret:{client_secret}(Yalnızca web uygulamaları — Hesap ayarları içindeki Ahrefs Connect bölümünüzde bulunur. Masaüstü uygulamaları için eklemeyin.)
Yanıt örneği:
{
"access_token": "\<API isteklerinde kullanılacak belirteç>",
"expires_in": \<access_token'ın saniye cinsinden geçerlilik süresi>,
"token_type": "Bearer",
"scope": "apiv3-integration-apps"
}
Belirteç kullanım süresi ve yeniden bağlanma
- Yenileme belirteçleri verilmez.
- Erişim belirteçleri 1 yıl boyunca geçerlidir. Süresi dolduktan sonra kullanıcı, OAuth üzerinden yeniden bağlanmalıdır (yeniden yetkilendirmelidir).
info
Güvenlik notu:
- Asla
access_tokendeğerini son kullanıcılara, yetkilendirme sırasında veya sonrasında (UI, günlükler, URL'ler ya da istemci tarafı kod) açığa çıkarmayın. - Web uygulamaları için
client_secretdeğerini yalnızca sunucu tarafında saklayın. - Onay süreci kapsamında güvenli belirteç kullanımını göstermeniz gerekir.