Kucoin, uluslararası çok dilli bir kripto para borsasıdır. Kucoin verilerine erişmek için bazı API'ler sunar. Aşağıdaki API'ler desteklenir:
Kucoin API'nin 2 tür yöntemi vardır: public ve private. Public yöntemlere kimlik doğrulama olmadan erişilebilir, örnek: ticker fiyatlarını al. Private ve kullanıcı verileriyle ilgili yöntemler Kucoin API anahtarlarının kullanılmasını gerektirir.
REST API
Belirli bir sunucudan kanal mesajlarına abone olmak için, istemci tarafı sunucuya bir abonelik mesajı göndermelidir.
Abonelik başarılı olursa, yanıt true olarak ayarlandığında sistem size ack mesajları gönderir.
{
"id":"1545910660739",
"type":"ack"
}
Konu mesajları üretildiğinde, sistem ilgili mesajları istemci tarafına gönderecektir.
Aşağıdaki Abonelik / Abonelikten Çıkma yöntemleri desteklenir.
| Yöntem | Parametreler | Açıklama |
| SubscribeSymbolTickerV2 | Symbol | BBO değişikliklerinin gerçek zamanlı gönderimini almak için bu konuya abone olun. Abonelikten sonra, emir defterinde değişiklikler olduğunda, sistem size gerçek zamanlı ticker sembol bilgilerini gönderir. Zamanında bilgi için yeni konuyu kullanmanız önerilir. |
| SubscribeSymbolTicker | Symbol | BBO değişikliklerinin gerçek zamanlı gönderimini almak için bu konuya abone olun. Ticker kanalı, bir eşleşme gerçekleştiğinde gerçek zamanlı fiyat güncellemeleri sağlar. Aynı anda birden fazla emir eşleşirse, yalnızca son eşleşen olay gönderilir. |
| SubscribeLevel2MarketData | Symbol | Düzey 2 emir defteri verilerini almak için bu konuya abone olun. |
| SubscribeExecutionData | Symbol | Yürütülen her emir için, sistem size eşleşme mesajlarını aşağıdaki biçimde gönderir. |
| SubscribeLevel2_5BestAskBid | Symbol | En fazla her 100 milisaniyede bir döndürülür. |
| SubscribeLevel2_50BestAskBid | Symbol | En fazla her 100 milisaniyede bir döndürülür. |
| SubscribeContractMarketData | Symbol | Sözleşmenin piyasa verisini almak için bu konuya abone olun. |
| SubscribeSystemAnnouncements | Symbol | Sistem duyurularını almak için bu konuya abone olun. |
| SubscribeTransactionStatistics | Symbol | İşlem istatistikleri kullanıcılara her 5 saniyede bir gönderilecektir. |
| SubscribeKlines | Symbol | Kontrat kline (mum çubuğu) verisine abone olun. |
| SubscribeFundingFeeSettlement | Symbol | Fonlama ücreti (funding fee) hesaplaşma bildirimlerine abone olun. |
ACK parametresi true olarak gönderilirse, başarılı bir abonelik / abonelik iptalinden sonra istemci bununla ilgili bir mesaj alır.
Kucoin hesabınızdan alınan geçerli bir ApiKey gerektirir. ApiKey, ApiSecret ve Passphrase, istemci API bileşeninin Kucoin özelliğinde ayarlanmalıdır.
Her değişiklik olduğunda aşağıdaki veriler istemciye gönderilir. Herhangi bir yönteme abone olmaya gerek yoktur, geçerli bir ApiKey ayarlarsanız bu otomatik olarak yapılır.
| Yöntem | Açıklama |
| SubscribeTradeOrders | Bu konu, emirlerinizin tüm değişiklik olaylarını gönderir. |
| SubscribeAccountBalance |
Bir hesap bakiyesi değiştiğinde bu mesajı alırsınız. Mesaj, değişikliğin ayrıntılarını içerir. |
| SubscribePositionChange | Pozisyon durumu değiştiğinde sistem değişiklik olayını gönderir. |
| SubscribeStopOrder | Sistem tarafından bir stop emri alındığında, "open" türünde bir mesaj alırsınız. Bu, bu emrin sisteme girdiği ve tetiklenmeyi beklediği anlamına gelir. |
| SubscribeMarginMode | Marj modu değişikliklerine abone olun. Marj modu güncellendiğinde sistem değişiklik olayını gönderir. |
| SubscribeCrossMarginLeverage | Çapraz teminat kaldıraç değişikliklerine abone olun. Çapraz teminat kaldıracı güncellendiğinde sistem değişiklik olayını gönderir. |
Tüm uç noktalar ya bir JSON nesnesi ya da dizisi döndürür.
Public API EndPoints
Bu uç noktalara herhangi bir yetkilendirme olmadan erişilebilir.
Genel Uç Noktalar
| Yöntem | Parametreler | Açıklama |
| GetServiceStatus | Rest API'ye bağlantıyı test edin ve Service Status'ü alın | |
| GetServerTime | Rest API'ye bağlantıyı test edin ve geçerli sunucu zamanını alın. |
Market Data EndPoints
| Yöntem | Parametreler | Açıklama |
| GetOpenContractList | Tüm açık sözleşmelerin bilgisini almak için istek gönderin. | |
| GetOrderInfoContract | Belirtilen sözleşmenin bilgilerini almak için istek gönderin. | |
| GetTicker | Symbol | Gerçek zamanlı ticker, son işlem gören fiyatı, son işlem gören boyutu, işlem ID'sini, likidite alıcısının tarafını, en iyi alış fiyatını ve boyutunu, en iyi satış fiyatını ve boyutunu ve ayrıca emirlerin işlem zamanını içerir. Bu mesajlar Websocket aracılığıyla da elde edilebilir. Sequence Number, Websocket tarafından gönderilen mesajların sürekli olup olmadığını değerlendirmek için kullanılır. |
| GetPartOrderBook20 | Symbol | Bir sembol için toplu açık emirlerin anlık görüntüsünü (snapshot) alın. |
| GetPartOrderBook100 | Symbol | Bir sembol için toplu açık emirlerin anlık görüntüsünü (snapshot) alın. |
| GetFullOrderBook | Symbol | Bir sembol için toplu açık emirlerin anlık görüntüsünü (snapshot) alın. |
| GetLevel2PullingMessages | Symbol | Websocket tarafından gönderilen mesajlar sürekli değilse, dizinin eksik olmadığından emin olmak için aşağıdaki isteği gönderebilir ve verileri yeniden çekebilirsiniz. İstekte, start parametresi en son aldığınız mesajın dizi numarası artı 1'dir ve end parametresi mevcut aldığınız mesajın dizi numarası eksi 1'dir. Mesajları yeniden çekip yerel borsa emir defterinize uyguladıktan sonra, Websocket artımlı besleme aracılığıyla emir defterini güncellemeye devam edebilirsiniz. end ve start parametresi arasındaki fark 500'den fazlaysa, lütfen bu isteği kullanmayı durdurun ve Level 2 emir defterini yeniden oluşturmanızı öneririz. |
| GetTradeHistory | Symbol | Bir sembol için son 100 işlemi listeleyin. |
| GetInterestRateList | Symbol | Faiz oranı listesini kontrol edin. |
| GetIndexList | Symbol | İndeks listesini kontrol et |
| GetCurrentMarkPrice | Symbol | Geçerli işaret fiyatını kontrol edin. |
| GetPremiumIndex | Symbol | Premium index almak için istek gönderin. |
| GetCurrentFundingRate | Symbol | Geçerli mark fiyatını kontrol etmek için istek gönderin. |
| GetKLine | Symbol | Kontratın K Line Verilerini Al |
Özel API Uç Noktaları
Sunucu tarafından yetkilendirilmek için bir APIKey ve APISecret gerektirir.
User EndPoints
| Yöntem | Parametreler | Açıklama |
| GetAccountOverview | Get Account Overview | |
| GetTransactionHistory | Açık pozisyonlar varsa, döndürülen ilk sayfanın durumu Pending olur ve mevcut 8 saatlik mutabakat döneminde gerçekleşen kar ve zararı gösterir. Sayfayı çevirmek için lütfen mevcut sayfanın minimum offset numarasını offset alanına belirtin. |
Trade Endpoints
| Yöntem | Parametreler | Açıklama |
| PlaceOrder | İki tür sipariş verebilirsiniz: limit ve market. Siparişler yalnızca hesabınızda yeterli fon varsa verilebilir. Bir sipariş verildikten sonra, fonlarınız siparişin süresi boyunca beklemeye alınır. Beklemedeki fon miktarı, sipariş türüne ve belirtilen parametrelere bağlıdır. | |
| PlaceMarketOrder | Bir Market Emri verir. | |
| PlaceLimitOrder | Bir Limit Order verir. | |
| CancelOrder | Bir Emri Order Id'ye göre iptal eder. | |
| LimitOrderMassCancellation | Tüm açık emirleri iptal edin (stop emirleri hariç). Yanıt, iptal edilen emirlerin orderID'lerinin bir listesidir. | |
| StopOrderMassCancellation | Tetiklenmemiş tüm stop emirlerini iptal edin. Yanıt, iptal edilen stop emirlerinin orderID listesidir. Tetiklenmiş stop emirlerini iptal etmek için lütfen 'Limit Order Mass Cancelation' kullanın. | |
| GetOrderList | Geçerli emirlerinizi listeleyin. | |
| GetUntriggeredStopOrderList | Tetiklenmemiş stop emirleri listesini alın. | |
| GetListOrdersCompleted24hr | Son 24 saatteki son 1000 emrin listesini alın. Son işlem gören emir geçmişinizi düşük gecikmeyle almanız gerekiyorsa, bu uç noktayı sorgulayabilirsiniz. | |
| GetOrder | Emir kimliğine göre tek bir emir alın (stop emri dahil). | |
| GetOrderByClientOid | İstemci emir kimliğine göre tek bir emri alın (stop emri dahil). | |
| GetFills | Son doldurmaların (fill) listesini alın. | |
| GetRecentFills | Son 24 saatteki son 1000 fill'in listesini alır. Son işlem yaptığınız emir geçmişinizi düşük gecikmeyle almanız gerekiyorsa, bu uç noktayı sorgulayabilirsiniz. | |
| ActiveOrderValueCalculation | Tüm etkin emirlerinizin toplam sayısını ve değerini almak için bu uç noktayı sorgulayabilirsiniz. | |
| GetPositionDetails | Belirtilen bir pozisyonun pozisyon ayrıntılarını alın. | |
| GetPositionList | Belirtilen bir pozisyonun pozisyon ayrıntılarını alın. | |
| AutoDepositMargin | Auto-Deposit Margin Etkinleştir/Devre Dışı Bırak | |
| AddMarginManually | Manuel Olarak Marj Ekle | |
| ObtainFuturesRiskLimitLevel | Bu arayüz, belirli bir kontratın risk limiti düzeyi hakkında bilgi almak için kullanılabilir | |
| AdjustRiskLimitLevel | Bu arabirim, risk limiti seviyesinin ayarlanması içindir. Seviyeyi ayarlamak açık siparişi iptal eder, yanıt yalnızca ayarlama isteğinin gönderiminin başarılı olup olmadığını gösterebilir. | |
| GetFundingHistory | Funding geçmişini almak için istek gönderin. | |
| GetMaxOpenSize | Bir sözleşme için maksimum açık pozisyon boyutunu alın. | |
| SwitchMarginMode | Cross margin ve isolated margin modları arasında geçiş yapın. | |
| GetMarginMode | Bir kontrat için mevcut marj modunu alın. |
Kucoin Mesajları TsgcWebSocketClient bileşeninde alınır, aşağıdaki olayları kullanabilirsiniz:
OnConnect
Kucoin sunucusuna başarılı bir bağlantının ardından.
OnDisconnect
Kucoin sunucusundan bir bağlantı kesilmesinden sonra
OnMessage
Sunucu tarafından istemciye gönderilen mesajlar bu olayda işlenir.
OnError
Protokolde herhangi bir hata varsa, bu olay çağrılır.
OnException
İşlenmeyen bir özel durum varsa, bu olay çağrılır.
Ek olarak, Kucoin API Bileşeninde, bir HTTP İsteği (REST API veya WebSocket Feeds) çağrılırken her hata olduğunda tetiklenen OnKucoinHTTPException adlı özel bir olay vardır.