Kimlik Doğrulama ve API Anahtarları
API anahtarı nedir
API anahtarı, kodunuzun Cognivo'ya gönderdiği ve bir isteğin size ait olduğunu anlamamızı sağlayan gizli bilgidir. Her Developer API çağrısı bir anahtar taşır. Anahtarlar bir projenin içinde yer alır ve proje, anahtarlarınızı ve kullanımlarını bir arada gruplar.
Bu sayfayı ilk çağrınızdan önce, bir anahtarın neleri yapmasına izin verildiğini bilmeniz gerektiğinde ya da bir anahtar sızmış olabileceği için onu devre dışı bırakmanız gerektiğinde okuyun.
Nerede bulunur
Cognivo dApp'te oturum açın, sol kenar çubuğunda Account bölümünü, ardından Developers sayfasını açın. Oturum açmadığınızda sayfa yalnızca bir tanıtım ekranı gösterir.
Developers sayfasında dört sekme vardır: Keys, Usage, Endpoints ve Quickstart. Bu sayfadaki her şey Keys sekmesinde gerçekleşir.
Canlı erişim ve kredi bakiyeniz
Sayfanın üst kısmındaki bir banner erişim modelini açıkça belirtir: bazı endpoint'ler etkin herhangi bir anahtarla ücretsizdir, diğerleri ise başarılı çağrı başına Cognivo kredi bakiyenizden ücretlendirilir. Daha aşağıda yer alan Live API access kartı, canlı bir anahtarın oluşturduğunuz anda çalıştığını teyit eder. Onay adımı ya da bekleme listesi yoktur.
Sayfanın yanında güncel kredi bakiyeniz, bir Top up credits düğmesi ve bir Enterprise access düğmesi görünür. Enterprise, özel fiyatlandırma ya da daha yüksek limitler için talep üzerinden ilerleyen tek erişim yoludur. Geri kalan her şey self servistir.
Her Cognivo hesabı ayrıca her gün 5 ücretsiz kredi alır; bunlar UTC gece yarısında sıfırlanır. Bakiyenin nasıl işlediği için Billing ve Krediler, endpoint başına fiyatlar için Hız limitleri, hatalar ve faturalandırma sayfasına bakın.
Keys sekmesi
Project açılır menüsünden bir proje seçin ya da New project ile bir tane oluşturun. Keys sekmesi ardından o projeye ait tüm anahtarları listeler.
Her anahtar satırı, verdiğiniz adı, anahtarın Test mi Live mı olduğunu, geçerli saatlik limiti, taşıdığı izinleri ve ne zaman oluşturulup en son ne zaman kullanıldığını gösterir. Last used: Never ifadesi, o anahtarla hiç çağrı yapılmadığı anlamına gelir.
Bir anahtarın yalnızca öneki ve son dört karakteri gösterilir. Cognivo geri okunabilecek başka hiçbir şey saklamaz; tam anahtarın tam olarak bir kez görünmesinin nedeni budur.
Bir anahtar oluşturma
+ New key seçin. Form üç şey ister: anahtarlarınızı birbirinden ayırt etmenize yardımcı olacak isteğe bağlı bir ad, Test ya da Live modu ve en az bir izin.
Live seçmek, mod açılır menüsünün altında kredi bakiyenizi gösterir; bu, canlı çağrıların gerçek çağrılar olduğunu ve bu bakiyeden ücretlendirildiğini hatırlatır. Test seçmek ise hiçbir zaman ücretlendirilmeyen ve dar limitleri olan bir sandbox anahtarı oluşturur.
Create key seçtiğinizde tam anahtar bir kez, bir iletişim kutusunda görünür.
- Tam anahtar hâlâ ekrandayken kopyalama simgesiyle kopyalayın, çünkü bir daha gösterilmez.
- Anahtarı daha sonra bulabileceğiniz bir yere kaydettikten sonra Tamam'ı seçin.
Anahtarı kaybederseniz geri kurtaramazsınız. Bunun yerine anahtarı döndürün; bu işlem aşağıda anlatılıyor.
Anahtarınızı gönderme
Kanonik başlık X-API-Key şeklindedir:
curl -X POST 'https://api.cognivolabs.io/v1/api/intel/risk' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"chain":"eth","address":"0xTOKEN_CONTRACT"}'
Authorization: Bearer YOUR_API_KEY biçimi, bunu tercih eden istemci kütüphaneleri için bir alternatif olarak kabul edilir. Anahtarı sunucunuzda tutun. Asla tarayıcı koduna koymayın.
API bugün Ethereum, Base ve BNB Chain'i kapsar.
İzinler
Anahtarlar varsayılan olarak reddeder. Bir anahtar yalnızca oluştururken verdiğiniz endpoint gruplarını çağırabilir. Üç izin vardır ve her biri bir endpoint kümesinin kilidini açar.
Intelligence (intel:read) günlük kullanım iznidir. "Bu token ya da cüzdanda neler oluyor?" sorusunu yanıtlar: fiyat düşüşünün nedenleri, risk sinyalleri, ekip cüzdanı davranışı, gerçekleşmiş PnL ve tam hareketler. POST /v1/api/intel/why-down, POST /v1/api/intel/team-wallets, POST /v1/api/intel/risk, POST /v1/api/wallet/pnl ve POST /v1/api/wallet/exact-movements endpoint'lerinin kilidini açar.
Security (security:read) bir anahtarın, bir cüzdanın neleri onayladığını kontrol etmesini sağlar; hangi kontratların token'larını harcayabildiği ve hangi izinlerin sınırsız olduğu dahil. Yalnızca okumadır. Bu izne sahip bir anahtar asla fon hareket ettiremez ya da bir onayı iptal edemez. POST /v1/api/wallet/approvals endpoint'inin kilidini açar.
Liquidity (liquidity:read) bir anahtarın havuz bağlamını, LP saklama durumunu ve kilit ile yakma bağlamını okumasını sağlar. POST /v1/api/intel/liquidity endpoint'inin kilidini açar.
GET /v1/api/health hiçbir anahtar gerektirmez. GET /v1/api/me ve GET /v1/api/discover, izinleri ne olursa olsun geçerli herhangi bir anahtarla çalışır.
İzinler anahtar oluşturulduğunda sabitlenir. Bunları değiştirmek için ihtiyacınız olan izinlerle yeni bir anahtar oluşturun ve eskisini iptal edin. 403 scope_denied ile başarısız olan bir çağrı, anahtarın o endpoint'in gerektirdiği izni taşımadığı anlamına gelir.
Test anahtarları ve canlı anahtarlar
| Önek | Ne için kullanılır | Faturalandırma | Hız üst sınırı |
|---|---|---|---|
cogv_test_ | API'yi denemek için. Portalda Test ve Sandbox olarak etiketlenir. Canlı istihbarat çalıştıramaz. | asla ücretlendirilmez | saatte 25 istek, günde 100, saniyede 1 |
cogv_live_ | Gerçek trafik için. Self servistir, hemen çalışır. | Başarılı çağrı başına Cognivo kredisi. Başarısız çağrılar asla ücretlendirilmez. | başlangıçta saatte 1.000 istek, bkz. hız limitleri |
Test anahtarı ücretsiz bir üretim anahtarı değildir. Bununla yapılan canlı çağrılar 403 sandbox_limited yanıtı verir. Developer API çağrıları için ücretlendirme bugün kapalıdır, bu yüzden başarılı bir çağrı hiçbir şey düşmez ve bakiyeniz değişmez.
Portal ayrıca her anahtarda bir erişim modu gösterir. Paid sıradan kullandıkça öde modelidir. Trial, bitiş tarihi olan geçici bir değerlendirme hakkıdır. Partner ve Enterprise, Cognivo ile kurulan düzenlemelerdir. Suspended, anahtarın hiçbir şey çalıştıramayacağı anlamına gelir ve portal nedenini gösterir. Az sayıda eski anahtar, self servis faturalandırmadan önce oluşturulmuştur ve yalnızca metadata endpoint'lerini çağırabilir; bu yüzden canlı çağrılar 403 access_required yanıtı verir. Bunları kullandıkça öde modeline taşımak için yeni bir canlı anahtar oluşturun.
GET /v1/api/me, anahtarınızın erişim modunu, izinlerini, credits_balance değerinizi ve kredi yükleme yönergelerini bildirir. Bakiyeniz bir çağrıyı karşılayamıyorsa 402 payment_required alırsınız ve hiçbir ücret kesilmez. Kredi yükleyip yeniden deneyin.
Döndürme ve iptal etme
Her iki kontrol de her anahtar satırının sağında yer alır.
- Bunun ne tür bir anahtar olduğunu görmek için adın yanındaki Test ve Sandbox etiketlerine ve yanlarında yazan saatlik limite bakın.
- Bu anahtarı yenisiyle değiştirmek için Yenile'yi seçin; yeni anahtar bir kez gösterilir ve eski anahtar hemen çalışmayı durdurur.
- Bir anahtarı kalıcı olarak kapatmak için İptal et'i seçin, örneğin artık gerekmiyorsa veya başkasının onu gördüğünü düşünüyorsanız.
Döndürme işlemi önce onay ister ve iletişim kutusu tam olarak ne olacağını söyler.
Döndürülen bir anahtar adını, izinlerini, katmanını, varsa ağ kısıtlamasını, varsa son kullanma tarihini ve kalan hakkını korur; bu yüzden döndürme güvenlidir ve anahtarın yapabileceklerini sessizce genişletmez. Yeni anahtar, tıpkı yeni bir anahtar gibi aynı iletişim kutusunda bir kez gösterilir. İptal etme kalıcıdır ve anahtarın her endpoint üzerinde çalışmasını hemen durdurur.
Sızma şüphesi duyduğunuz her durumda ve düzenli bir takvimle anahtarları döndürün.
Cognivo'nun bir anahtara uygulayabileceği kısıtlamalar
Bunlar portal formunda değil anahtar kaydında ayarlanır ve her istekte uygulanır. Kendi anahtarınız için nelerin geçerli olduğunu GET /v1/api/me ile teyit edebilirsiniz.
- Ağ kısıtlaması. Bir anahtar belirli ağlarla sınırlandırılabilir. Farklı bir ağ belirten bir istek
403 chain_deniedile reddedilir. Reddetme, Cognivo herhangi bir yukarı akış çağrısı yapmadan ve herhangi bir hak kullanılmadan önce gerçekleşir; böylece anahtarınızın yapmasına izin verilmeyen bir çağrı size hiçbir zaman bir şeye mal olmaz.allowed_chainsolarak bildirilir; buradanullkısıtlama olmadığı anlamına gelir. - Son kullanma. Bir anahtara bitiş tarihi verilebilir. Bu tarih geçtikten sonra anahtar
GET /v1/api/medahil her yerde çalışmayı durdurur ve403 key_expireddöndürür.expires_atolarak bildirilir; buradanullsüresinin dolmadığı anlamına gelir. Bir deneme hakkının da bitiş tarihi varsa hangisi önce gelirse o geçerli olur. - Origin ve IP izin listeleri. Bir anahtar belirli origin'lerle (
https://*.yourapp.comgibi joker alt alan adları dahil) ya da belirli IP adresleri ve CIDR aralıklarıyla sınırlandırılabilir. Başka her yerden gelen istekler403 origin_deniedile reddedilir. Boş listeler kısıtlama olmadığı anlamına gelir.
Sonraki adımlar
Elinizde bir anahtarla, Hızlı Başlangıç sayfasında ilk çağrınızı yapın, ardından her endpoint'in ne döndürdüğünü ve ne kadara mal olduğunu görmek için Endpoint referansına göz atın. Bir çağrı tanımadığınız bir hata koduyla dönerse Hız limitleri, hatalar ve faturalandırma sayfası bunların tamamını listeler.