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'sinin 2 tür yöntemi vardır: genel ve özel. Genel yöntemlere kimlik doğrulaması olmadan erişilebilir, örnek: ticker fiyatlarını alma. Kullanıcı verileriyle ilgili özel yöntemler, Kucoin API anahtarlarının kullanımı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 |
| SubscribeSymbolTicker | Symbol | BBO değişikliklerinin push'unu almak için bu konuya abone olun. Bir saniye içinde değişiklik yoksa, gönderilmez. En yeni BBO ile 100ms'de bir gönderilir. Son veriyle karşılaştırıldığında değişiklik yoksa, gönderilmez. |
| SubscribeAllSymbolsTicker | Tüm piyasa sembollerinin BBO değişiminin gönderimini almak için bu konuya abone olun. | |
| SubscribeSymbolSnapshot | Symbol | Tek bir sembol için anlık görüntü verisi almak üzere abone olun. Anlık görüntü verisi 2 saniyelik aralıklarla gönderilir. |
| SubscribeMarketSnapshot | Market | Tüm piyasanın anlık görüntü verilerini almak için bu konuya abone olun. Anlık görüntü verileri 2 saniyelik aralıklarla gönderilir. |
| SubscribeLevel2MarketData | Symbol | Level2 sipariş defteri verilerini almak için bu topic'e abone olun. Websocket aboneliği başarılı olduğunda, sistem websocket tarafından iletilen artış değişiklik verisini size gönderecektir. |
| SubscribeLevel2_5BestAskBid | Symbol | Sistem, her 100 milisaniyenin anlık görüntü verisi olan en iyi 5 alış/satış emri verisini döndürecektir (başka bir deyişle, en iyi 5 alış/satış emri verisi gerçek zamanlı olarak her 100 milisaniyede bir döndürülür). |
| SubscribeLevel2_50BestAskBid | Symbol | Sistem, her 100 milisaniyenin anlık görüntü verisi olan en iyi 50 ask/bid sipariş verisini döndürür (başka bir deyişle, en iyi 50 ask/bid sipariş verisi gerçek zamanlı olarak her 100 milisaniyede bir döndürülür). |
| SubscribeKlines | Symbol | K-Line verisi almak için bu konuya abone olun. |
| SubscribeMatchExecutionData | Symbol | Level 3'ün eşleşen olay veri akışını almak için bu konuya abone olun. İşlem gören her emir için sistem, size aşağıdaki formatta eşleşme mesajları gönderir. |
| SubscribeIndexPrice | Symbol | Margin ticareti için index fiyatını almak üzere bu konuya abone olun. |
| SubscribeMarkPrice | Symbol | Margin işlemi için mark price almak üzere bu konuya abone olun. |
| SubscribeOrderBookChanged | Symbol | Margin işlemindeki order book değişikliklerini almak için bu konuya abone olun. |
| SubscribeLevel1 | Symbol | Bir sembol için Level 1 en iyi alış/satış verisine 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. |
| SubscribePositionStatus | Pozisyon durumu değiştiğinde sistem değişiklik olayını gönderir. |
| SubscribeMarginTradeOrders | Sistem, emir, emir defterine girdiğinde bu mesajı borç verenlere iletir. |
| 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. |
| SubscribeTradeOrdersV2 | Gelişmiş emir güncelleme bildirimleri için trade orders V2 kanalına abone olun. |
| SubscribeCrossMarginPosition | Cross margin pozisyon güncellemelerine abone olun. Cross margin pozisyonu değiştiğinde sistem değişiklik olayını iletir. |
| SubscribeIsolatedMarginPosition | İzole marj pozisyonu güncellemelerine abone olun. İzole marj pozisyonu değiştiğ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 |
| GetSymbolList | Market | İşlem için kullanılabilir para birimi çiftlerinin bir listesini almak için bu uç nokta aracılığıyla istek gönderin. İşlem sembolünün piyasa bilgisini almak isterseniz |
| GetTicker | Symbol | Seviye 1 Market Data almak için bu uç nokta aracılığıyla istek yapın. Döndürülen değer, en iyi alış fiyatı ve boyutunu, en iyi satış fiyatı ve boyutunu ve ayrıca son işlem gören fiyatı ve son işlem gören boyutu içerir. |
| GetAllTickers | Piyasadaki tüm işlem çiftleri için piyasa ticker'larını isteyin (24 saatlik hacim dahil). | |
| Get24hrStats | Symbol | Belirtilen ticker'ın son 24 saatteki istatistiklerini almak için bu uç nokta aracılığıyla istek gönderin. |
| GetMarketList | Tüm işlem piyasası için işlem para birimini almak üzere bu endpoint aracılığıyla istek yapın. | |
| GetPartOrderBook20 | Symbol | Bir sembol için açık emirlerin listesini almak için bu uç nokta aracılığıyla istek gönderin. Düzey-2 emir defteri tüm alış ve satışları içerir (fiyata göre toplanmış), bu düzey her etkin fiyat için yalnızca bir boyut döndürür (o fiyat için yalnızca tek bir emir varmış gibi). Sistem, emir defterinde size 20 parça veri (alış ve satış verisi) döndürür. |
| GetPartOrderBook100 | Symbol | Bir sembol için açık emirlerin listesini almak üzere bu uç nokta aracılığıyla istek yapın. Seviye-2 emir defteri tüm alış ve satışları içerir (fiyata göre toplanmış), bu seviye her aktif fiyat için yalnızca bir boyut döndürür (o fiyat için yalnızca tek bir emir varmış gibi). Sistem, emir defterinde size 100 parça veri (alış ve satış verisi) döndürür. |
| GetFullOrderBook | Symbol | Belirtilen sembolün emir defterini almak için bu uç nokta üzerinden istek yapın. Seviye 2 emir defteri tüm alış ve satışları içerir (fiyata göre toplanmış). Bu seviye her fiyat için yalnızca bir toplam boyut döndürür (sanki o fiyat için tek bir emir varmış gibi). Bu API verileri tam derinlikle döndürür. |
| GetKLines | Symbol | Belirtilen sembolün kline'ını almak için bu uç nokta aracılığıyla istek yapın. Veriler, istenen türe göre gruplandırılmış kovalar hâlinde döndürülür. |
| GetCurrencies | Para birimi listesini almak için bu uç nokta üzerinden istek gönderin. | |
| GetCurrencyDetail | Currency | Belirtilen bir para biriminin para birimi ayrıntılarını almak için bu uç nokta üzerinden istek yapın |
| GetFiatPrice | Belirtilen bir para biriminin para birimi ayrıntılarını almak için bu uç nokta üzerinden istek yapın | |
| GetPartOrderBook1 | Symbol | Bir sembol için Seviye 1 en iyi alış/satışı almak üzere bu uç nokta aracılığıyla istek yapın. |
Özel API Uç Noktaları
Sunucu tarafından yetkilendirilmek için bir APIKey ve APISecret gerektirir.
User EndPoints
| Yöntem | Parametreler | Açıklama |
| GetAllSubAccounts | Bu arabirim aracılığıyla tüm alt kullanıcıların kullanıcı bilgilerini alabilirsiniz. | |
| GetListAccounts | Hesapların bir listesini alın. | |
| GetAccount | AccountId | Tek bir hesap için bilgi. accountId değerini bildiğinizde bu uç noktayı kullanın. |
| GetAccountBalanceSubAccount | SubUserId | Bu uç nokta, subUserId tarafından belirtilen bir alt kullanıcının hesap bilgilerini döndürür. |
| InnerTransfer | Bu API uç noktası, hesaplar arasında dahili olarak fon transferi yapmak için kullanılabilir. Kullanıcılar, ana hesapları, işlem hesapları, çapraz teminat hesapları ve izole teminat hesapları arasında ücretsiz olarak fon transferi yapabilir. Ana hesaptan, çapraz teminat hesabından ve işlem hesabından futures hesabına fon transferi desteklenir, ancak futures hesaplarından diğer hesaplara fon transferi desteklenmez. | |
| GetDepositAddresses | Currency | Bir para birimi için yatırma adreslerini alın. |
| CreateDepositAddress | Currency | Bir para birimi için yeni bir yatırma (deposit) adresi oluşturun. |
| GetDepositList | Para yatırma geçmişini alın. | |
| GetAccountLedgers | Hesap defteri (ledger) girişlerini alın. | |
| GetTradeFees | Symbols | Belirtilen semboller için işlem ücretlerini alın. |
Para Çekme Uç Noktaları
| Yöntem | Parametreler | Açıklama |
| GetWithdrawalsList | Çekimlerin bir listesini alın. | |
| GetHistoricalWithdrawalsList | KuCoin V1 geçmiş para çekme işlemlerinin listesi. | |
| GetWithdrawalsQuotas | Currency | Get Withdrawals Quotas |
| ApplyWithdraw | Currency, Address, Amount | Bir Withdraw Oluştur |
| CancelWithdraw | WithdrawalId | Yalnızca PROCESSING durumundaki para çekme istekleri iptal edilebilir. |
Trade Endpoints
| Yöntem | Parametreler | Açıklama |
| PlaceOrder | İki tür emir verebilirsiniz: limit ve market. Emirler yalnızca hesabınızda yeterli fon varsa verilebilir. Bir emir verildikten sonra, hesap fonlarınız emrin süresi boyunca beklemeye alınır. Ne kadar ve hangi fonların beklemeye alınacağı, emir türüne ve belirtilen parametrelere bağlıdır | |
| PlaceMarketOrder | Bir Market Emri verir. | |
| PlaceLimitOrder | Bir Limit Order verir. | |
| PlaceMarginOrder | Bir Margin Emri verir. | |
| CancelOrder | Bir Emri Order Id'ye göre iptal eder. | |
| CancelOrderByClientOid | Bir Siparişi, İstemci Sipariş Kimliğine göre iptal eder. | |
| CancelAllOrders | Tüm açık emirleri iptal edin. | |
| ListOrders | Geçerli emir listenizi almak için bu uç nokta üzerinden istek yapın. Öğeler sayfalanır ve en yenisini önce gösterecek şekilde sıralanır | |
| GetRecentOrders | Son 24 saatte 1000 emir almak için bu uç nokta aracılığıyla istek yapın. | |
| GetOrder | Emir ID'sine göre tek bir emir bilgisi almak için bu uç nokta aracılığıyla istek gönderin. | |
| GetOrderByClientOid | Client order ID'ye göre tek bir emir bilgisini almak için bu uç nokta aracılığıyla istek gönderin. | |
| ListFills | Son dolumları almak için bu uç nokta aracılığıyla istek gönderin. | |
| GetRecentFills | Son 24 saatte 1000 doldurma (fill) listesi almak için bu uç nokta aracılığıyla istek gönderin. | |
| PlaceStopOrder | Bir Stop Emri Verir. | |
| PlaceStopMarketOrder | Bir Stop Market Order verir. | |
| PlaceStopLimitOrder | Bir Stop Limit Emri verir. | |
| CancelStopOrder | Emir Kimliğine göre Açık bir Stop Emrini İptal Eder | |
| CancelStopOrderByClientOid | İstemci Emir Kimliğine göre Açık bir Stop Emrini İptal Eder | |
| CancelAllStopOrders | Tüm Stop Emirlerini İptal Et | |
| GetStopOrder | Emir ID'si aracılığıyla bir stop emri bilgisi almak için bu arayüz aracılığıyla istek gönderin. | |
| GetStopOrderByClientOid | İstemci emir kimliği aracılığıyla bir stop emir bilgisi almak için bu arayüz üzerinden istekte bulunun. | |
| ListStopOrders | Mevcut tetiklenmemiş stop emri listenizi almak için bu uç nokta üzerinden istekte bulunun. Öğeler sayfalandırılır ve en yeniyi önce gösterecek şekilde sıralanır. | |
| PlaceHFOrder | Yüksek frekanslı bir emir verin. | |
| CancelHFOrder | Order ID'ye göre yüksek frekanslı bir emri iptal edin. | |
| CancelHFOrderByClientOid | Yüksek frekanslı bir emri istemci emir ID'sine göre iptal edin. | |
| CancelAllHFOrders | Tüm yüksek frekanslı emirleri iptal edin. | |
| GetHFActiveOrders | Etkin yüksek frekanslı emirleri alın. | |
| GetHFDoneOrders | Tamamlanmış yüksek frekanslı siparişleri alın. | |
| GetHFOrder | Emir ID'sine göre belirli bir yüksek frekanslı emir 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.