using Bittrex.Models;
using Refit;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Bittrex.Api
{
public interface IBittrexApi
{
[Get("/public/getmarkets")]
Task<IRespone<IReadOnlyCollection<Market>>> GetMarkets();
[Get("/public/getcurrencies")]
Task<IRespone<IReadOnlyCollection<Currency>>> GetCurrencies();
[Get("/public/getticker")]
Task<IRespone<MarketTickValues>> GetTicker([AliasAs("market")] string marketName);
[Get("/public/getmarketsummaries")]
Task<IRespone<IReadOnlyCollection<MarketSummary>>> GetMarketSummaries();
[Get("/public/getmarketsummary")]
Task<IRespone<IReadOnlyCollection<MarketSummary>>> GetMarketSummary([AliasAs("market")] string marketName);
// TODO - GetOrderBook
[Get("/public/getmarkethistory")]
Task<IRespone<IReadOnlyCollection<MarketHistory>>> GetMarketHistory([AliasAs("market")] string marketName);
[Headers("Authorization: Custom")]
[Get("/market/buylimit")]
Task<IRespone<BaseOrder>> CreateBuyOrder([AliasAs("apikey")] string apiKey, [AliasAs("market")] string marketName, [AliasAs("quantity")] double quantity, [AliasAs("rate")] double rate, [AliasAs("nonce")] string nonce);
[Headers("Authorization: Custom")]
[Get("/market/selllimit")]
Task<IRespone<BaseOrder>> CreateSellOrder([AliasAs("apikey")] string apiKey, [AliasAs("market")] string marketName, [AliasAs("quantity")] double quantity, [AliasAs("rate")] double rate, [AliasAs("nonce")] string nonce);
[Headers("Authorization: Custom")]
[Get("/market/cancel")]
Task<IRespone<object>> CancelOrder([AliasAs("apikey")] string apiKey, [AliasAs("uuid")] string orderId);
[Headers("Authorization: Custom")]
[Get("/account/getwithdrawalhistory")]
Task<IRespone<IReadOnlyCollection<Payment>>> GetWithdrawalHistory([AliasAs("apikey")] string apiKey, [AliasAs("currency")] string currencyShortName, [AliasAs("nonce")] string nonce);
[Headers("Authorization: Custom")]
[Get("/account/getdeposithistory")]
Task<IRespone<IReadOnlyCollection<Payment>>> GetDepositHistory([AliasAs("apikey")] string apiKey, [AliasAs("currency")] string currencyShortName, [AliasAs("nonce")] string nonce);
}
}
Comments