diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/ISharedClient.cs b/CryptoExchange.Net/SharedApis/Legacy/ISharedClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/ISharedClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/ISharedClient.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/CancelFuturesOrderSocketOptions.cs b/CryptoExchange.Net/SharedApis/Legacy/Options/CancelFuturesOrderSocketOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/CancelFuturesOrderSocketOptions.cs rename to CryptoExchange.Net/SharedApis/Legacy/Options/CancelFuturesOrderSocketOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/CancelSpotOrderSocketOptions.cs b/CryptoExchange.Net/SharedApis/Legacy/Options/CancelSpotOrderSocketOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/CancelSpotOrderSocketOptions.cs rename to CryptoExchange.Net/SharedApis/Legacy/Options/CancelSpotOrderSocketOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/PlaceFuturesOrderSocketOptions.cs b/CryptoExchange.Net/SharedApis/Legacy/Options/PlaceFuturesOrderSocketOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/PlaceFuturesOrderSocketOptions.cs rename to CryptoExchange.Net/SharedApis/Legacy/Options/PlaceFuturesOrderSocketOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/PlaceSpotOrderSocketOptions.cs b/CryptoExchange.Net/SharedApis/Legacy/Options/PlaceSpotOrderSocketOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/PlaceSpotOrderSocketOptions.cs rename to CryptoExchange.Net/SharedApis/Legacy/Options/PlaceSpotOrderSocketOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFundingRateRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFundingRateRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFundingRateRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFundingRateRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesOrderClientIdRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesOrderClientIdRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesOrderClientIdRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesOrderClientIdRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesOrderRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesOrderRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesOrderRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesOrderRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesSymbolRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesSymbolRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesSymbolRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesSymbolRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesTickerRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesTickerRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesTickerRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesTickerRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesTpSlRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesTpSlRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesTpSlRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesTpSlRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesTriggerOrderRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesTriggerOrderRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IFuturesTriggerOrderRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IFuturesTriggerOrderRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IIndexPriceKlineRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IIndexPriceKlineRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IIndexPriceKlineRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IIndexPriceKlineRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/ILeverageRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/ILeverageRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/ILeverageRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/ILeverageRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IMarkPriceKlineRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IMarkPriceKlineRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IMarkPriceKlineRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IMarkPriceKlineRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IOpenInterestRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IOpenInterestRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IOpenInterestRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IOpenInterestRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IPositionHistoryRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IPositionHistoryRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IPositionHistoryRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IPositionHistoryRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IPositionModeRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IPositionModeRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Futures/IPositionModeRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Futures/IPositionModeRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IAssetsRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IAssetsRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IAssetsRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IAssetsRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IBalanceRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IBalanceRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IBalanceRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IBalanceRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IBookTickerRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IBookTickerRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IBookTickerRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IBookTickerRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IDepositRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IDepositRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IDepositRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IDepositRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IFeeRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IFeeRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IFeeRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IFeeRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IKlineRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IKlineRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IKlineRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IKlineRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IOrderBookRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IOrderBookRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IOrderBookRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IOrderBookRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IRecentTradeRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IRecentTradeRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IRecentTradeRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IRecentTradeRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/ITradeHistoryRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/ITradeHistoryRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/ITradeHistoryRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/ITradeHistoryRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/ITransferRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/ITransferRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/ITransferRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/ITransferRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IWithdrawRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IWithdrawRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IWithdrawRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IWithdrawRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IWithdrawalRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/IWithdrawalRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/IWithdrawalRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/IWithdrawalRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotOrderClientIdRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotOrderClientIdRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotOrderClientIdRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotOrderClientIdRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotOrderRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotOrderRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotOrderRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotOrderRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotSymbolRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotSymbolRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotSymbolRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotSymbolRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotTickerRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotTickerRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotTickerRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotTickerRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotTriggerOrderRestClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotTriggerOrderRestClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Rest/Spot/ISpotTriggerOrderRestClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Rest/Spot/ISpotTriggerOrderRestClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Futures/IFuturesOrderManagementSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/Futures/IFuturesOrderManagementSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Futures/IFuturesOrderManagementSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/Futures/IFuturesOrderManagementSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Futures/IFuturesOrderSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/Futures/IFuturesOrderSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Futures/IFuturesOrderSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/Futures/IFuturesOrderSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Futures/IPositionSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/Futures/IPositionSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Futures/IPositionSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/Futures/IPositionSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IBalanceSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/IBalanceSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IBalanceSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/IBalanceSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IBookTickerSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/IBookTickerSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IBookTickerSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/IBookTickerSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IKlineSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/IKlineSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IKlineSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/IKlineSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IOrderBookSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/IOrderBookSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IOrderBookSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/IOrderBookSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/ITickerSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/ITickerSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/ITickerSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/ITickerSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/ITickersSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/ITickersSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/ITickersSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/ITickersSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/ITradeSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/ITradeSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/ITradeSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/ITradeSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IUserTradeSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/IUserTradeSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/IUserTradeSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/IUserTradeSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Spot/ISpotOrderManagementSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/Spot/ISpotOrderManagementSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Spot/ISpotOrderManagementSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/Spot/ISpotOrderManagementSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Spot/ISpotOrderSocketClient.cs b/CryptoExchange.Net/SharedApis/Legacy/Socket/Spot/ISpotOrderSocketClient.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/Legacy/Socket/Spot/ISpotOrderSocketClient.cs rename to CryptoExchange.Net/SharedApis/Legacy/Socket/Spot/ISpotOrderSocketClient.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/CancelAllOrdersRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/CancelAllOrdersRequest.cs new file mode 100644 index 00000000..15431d5d --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/CancelAllOrdersRequest.cs @@ -0,0 +1,16 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to cancel all currently open orders + /// + public record CancelAllOrdersRequest : SharedRequest + { + /// + /// ctor + /// + /// Exchange specific parameters + public CancelAllOrdersRequest(ExchangeParameters? exchangeParameters = null) : base(null, exchangeParameters) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/CancelAllSymbolOrdersRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/CancelAllSymbolOrdersRequest.cs new file mode 100644 index 00000000..46d04ee4 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/CancelAllSymbolOrdersRequest.cs @@ -0,0 +1,18 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to cancel all currently open orders + /// + public record CancelAllSymbolOrdersRequest : SharedSymbolRequest + { + /// + /// ctor + /// + /// Symbol the order is on + /// Exchange specific parameters + public CancelAllSymbolOrdersRequest(SharedSymbol symbol, ExchangeParameters? exchangeParameters = null) + : base(symbol, exchangeParameters) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/CancelOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/CancelOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/CancelOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/CancelOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/CancelTpSlRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/CancelTpSlRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/CancelTpSlRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/CancelTpSlRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/ClosePositionRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/ClosePositionRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/ClosePositionRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/ClosePositionRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/EditFuturesOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/EditFuturesOrderRequest.cs new file mode 100644 index 00000000..493fc908 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/EditFuturesOrderRequest.cs @@ -0,0 +1,41 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to place a new Futures order + /// + public record EditFuturesOrderRequest : SharedSymbolRequest + { + /// + /// Order id + /// + public string OrderId { get; set; } + /// + /// Quantity of the order + /// + public SharedQuantity? Quantity { get; set; } + /// + /// Price of the order + /// + public decimal? Price { get; set; } + + /// + /// ctor + /// + /// Symbol to place the order on + /// The id of the order to edit + /// New quantity of the order + /// New price of the order + /// Exchange specific parameters + public EditFuturesOrderRequest( + SharedSymbol symbol, + string orderId, + SharedQuantity? quantity = null, + decimal? price = null, + ExchangeParameters? exchangeParameters = null) : base(symbol, exchangeParameters) + { + OrderId = orderId; + Quantity = quantity; + Price = price; + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/EditSpotOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/EditSpotOrderRequest.cs new file mode 100644 index 00000000..d21e7f4d --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/EditSpotOrderRequest.cs @@ -0,0 +1,41 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to place a new spot order + /// + public record EditSpotOrderRequest : SharedSymbolRequest + { + /// + /// Order id + /// + public string OrderId { get; set; } + /// + /// Quantity of the order + /// + public SharedQuantity? Quantity { get; set; } + /// + /// Price of the order + /// + public decimal? Price { get; set; } + + /// + /// ctor + /// + /// Symbol to place the order on + /// The id of the order to edit + /// New quantity of the order + /// New price of the order + /// Exchange specific parameters + public EditSpotOrderRequest( + SharedSymbol symbol, + string orderId, + SharedQuantity? quantity = null, + decimal? price = null, + ExchangeParameters? exchangeParameters = null) : base(symbol, exchangeParameters) + { + OrderId = orderId; + Quantity = quantity; + Price = price; + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetAssetRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetAssetRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetAssetRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetAssetRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetAssetsRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetAssetsRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetAssetsRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetAssetsRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetBalancesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetBalancesRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetBalancesRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetBalancesRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetBookTickerRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetBookTickerRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetBookTickerRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetBookTickerRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetClosedOrdersRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetClosedOrdersRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetClosedOrdersRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetClosedOrdersRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetDepositAddressesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetDepositAddressesRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetDepositAddressesRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetDepositAddressesRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetDepositsRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetDepositsRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetDepositsRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetDepositsRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetFeeRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetFeeRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetFeeRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetFeeRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetFundingRateHistoryRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetFundingRateHistoryRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetFundingRateHistoryRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetFundingRateHistoryRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/GetIndexPriceRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetIndexPriceRequest.cs new file mode 100644 index 00000000..075e5725 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/GetIndexPriceRequest.cs @@ -0,0 +1,17 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to retrieve the current index price for a symbol + /// + public record GetIndexPriceRequest : SharedSymbolRequest + { + /// + /// ctor + /// + /// Symbol to retrieve the index price for + /// Exchange specific parameters + public GetIndexPriceRequest(SharedSymbol symbol, ExchangeParameters? exchangeParameters = null) : base(symbol, exchangeParameters) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/GetIndexPricesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetIndexPricesRequest.cs new file mode 100644 index 00000000..71ee4c5e --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/GetIndexPricesRequest.cs @@ -0,0 +1,17 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to retrieve the current index prices for all symbols + /// + public record GetIndexPricesRequest : SharedRequest + { + /// + /// ctor + /// + /// Trading mode + /// Exchange specific parameters + public GetIndexPricesRequest(TradingMode? tradingMode = null, ExchangeParameters? exchangeParameters = null) : base(tradingMode, exchangeParameters) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetKlinesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetKlinesRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetKlinesRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetKlinesRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetLeverageRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetLeverageRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetLeverageRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetLeverageRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/GetMarkPriceRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetMarkPriceRequest.cs new file mode 100644 index 00000000..32fe19c4 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/GetMarkPriceRequest.cs @@ -0,0 +1,17 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to retrieve the current mark price for a symbol + /// + public record GetMarkPriceRequest : SharedSymbolRequest + { + /// + /// ctor + /// + /// Symbol to retrieve the mark price for + /// Exchange specific parameters + public GetMarkPriceRequest(SharedSymbol symbol, ExchangeParameters? exchangeParameters = null) : base(symbol, exchangeParameters) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Requests/GetMarkPricesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetMarkPricesRequest.cs new file mode 100644 index 00000000..79a8638c --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Requests/GetMarkPricesRequest.cs @@ -0,0 +1,17 @@ +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Request to retrieve the current mark prices for all symbols + /// + public record GetMarkPricesRequest : SharedRequest + { + /// + /// ctor + /// + /// Trading mode + /// Exchange specific parameters + public GetMarkPricesRequest(TradingMode? tradingMode = null, ExchangeParameters? exchangeParameters = null) : base(tradingMode, exchangeParameters) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetOpenInterestRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetOpenInterestRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetOpenInterestRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetOpenInterestRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetOpenOrdersRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetOpenOrdersRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetOpenOrdersRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetOpenOrdersRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetOrderBookRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetOrderBookRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetOrderBookRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetOrderBookRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetOrderTradesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetOrderTradesRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetOrderTradesRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetOrderTradesRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetPositionHistoryRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetPositionHistoryRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetPositionHistoryRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetPositionHistoryRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetPositionModeRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetPositionModeRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetPositionModeRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetPositionModeRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetPositionsRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetPositionsRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetPositionsRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetPositionsRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetRecentTradesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetRecentTradesRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetRecentTradesRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetRecentTradesRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetSymbolsRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetSymbolsRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetSymbolsRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetSymbolsRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetTickerRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetTickerRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetTickerRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetTickerRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetTickersRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetTickersRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetTickersRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetTickersRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetTradeHistoryRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetTradeHistoryRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetTradeHistoryRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetTradeHistoryRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetUserTradesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetUserTradesRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetUserTradesRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetUserTradesRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/GetWithdrawalsRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/GetWithdrawalsRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/GetWithdrawalsRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/GetWithdrawalsRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/PlaceFuturesOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/PlaceFuturesOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/PlaceFuturesOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/PlaceFuturesOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/PlaceFuturesTriggerOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/PlaceFuturesTriggerOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/PlaceFuturesTriggerOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/PlaceFuturesTriggerOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/PlaceSpotOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/PlaceSpotOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/PlaceSpotOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/PlaceSpotOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/PlaceSpotTriggerOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/PlaceSpotTriggerOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/PlaceSpotTriggerOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/PlaceSpotTriggerOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/SetLeverageRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SetLeverageRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/SetLeverageRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SetLeverageRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/SetPositionModeRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SetPositionModeRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/SetPositionModeRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SetPositionModeRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/SetTpSlRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SetTpSlRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/SetTpSlRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SetTpSlRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeAllTickersRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeAllTickersRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeAllTickersRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeAllTickersRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeBalancesRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeBalancesRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeBalancesRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeBalancesRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeBookTickerRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeBookTickerRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeBookTickerRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeBookTickerRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeFuturesOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeFuturesOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeFuturesOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeFuturesOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeKlineRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeKlineRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeKlineRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeKlineRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeOrderBookRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeOrderBookRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeOrderBookRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeOrderBookRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribePositionRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribePositionRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribePositionRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribePositionRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeSpotOrderRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeSpotOrderRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeSpotOrderRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeSpotOrderRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeTickerRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeTickerRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeTickerRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeTickerRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeTradeRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeTradeRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeTradeRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeTradeRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Socket/SubscribeUserTradeRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/SubscribeUserTradeRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Socket/SubscribeUserTradeRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/SubscribeUserTradeRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/TransferRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/TransferRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/TransferRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/TransferRequest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Rest/WithdrawRequest.cs b/CryptoExchange.Net/SharedApis/Models/Requests/WithdrawRequest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Rest/WithdrawRequest.cs rename to CryptoExchange.Net/SharedApis/Models/Requests/WithdrawRequest.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedAsset.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedAsset.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedAsset.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedAsset.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedBalance.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedBalance.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedBalance.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedBalance.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedBookTicker.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedBookTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedBookTicker.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedBookTicker.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedDeposit.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedDeposit.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedDeposit.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedDeposit.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedDepositAddress.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedDepositAddress.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedDepositAddress.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedDepositAddress.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFee.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFee.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFee.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFee.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFundingRate.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFundingRate.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFundingRate.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFundingRate.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesKline.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesKline.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesKline.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesKline.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesOrder.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesOrder.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesOrder.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesOrderUpdate.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesOrderUpdate.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesOrderUpdate.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesOrderUpdate.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesSymbol.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesSymbol.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesSymbol.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesSymbol.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesTicker.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesTicker.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesTicker.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesTriggerOrder.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedFuturesTriggerOrder.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedFuturesTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedId.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedId.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedId.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedId.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Responses/SharedIndexPrice.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedIndexPrice.cs new file mode 100644 index 00000000..157b5415 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Responses/SharedIndexPrice.cs @@ -0,0 +1,26 @@ +using System; +using System.Diagnostics; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Index price + /// + [DebuggerDisplay("{Symbol,nq}: {IndexPrice}")] + public record SharedIndexPrice : SharedSymbolModel + { + /// + /// Current index price + /// + public decimal IndexPrice { get; set; } + + /// + /// ctor + /// + public SharedIndexPrice(SharedSymbol? sharedSymbol, string symbol, decimal indexPrice) + : base(sharedSymbol, symbol) + { + IndexPrice = indexPrice; + } + } +} diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedKline.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedKline.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedKline.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedKline.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedLeverage.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedLeverage.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedLeverage.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedLeverage.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Responses/SharedMarkPrice.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedMarkPrice.cs new file mode 100644 index 00000000..999f7bf8 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/Models/Responses/SharedMarkPrice.cs @@ -0,0 +1,26 @@ +using System; +using System.Diagnostics; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Mark price + /// + [DebuggerDisplay("{Symbol,nq}: {MarkPrice}")] + public record SharedMarkPrice : SharedSymbolModel + { + /// + /// Current mark price + /// + public decimal MarkPrice { get; set; } + + /// + /// ctor + /// + public SharedMarkPrice(SharedSymbol? sharedSymbol, string symbol, decimal markPrice) + : base(sharedSymbol, symbol) + { + MarkPrice = markPrice; + } + } +} diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedOpenInterest.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedOpenInterest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedOpenInterest.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedOpenInterest.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedOrderBook.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedOrderBook.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedOrderBook.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedOrderBook.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedPosition.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedPosition.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedPosition.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedPosition.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedPositionHistory.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedPositionHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedPositionHistory.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedPositionHistory.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedPositionModeResult.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedPositionModeResult.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedPositionModeResult.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedPositionModeResult.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotOrder.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotOrder.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotOrder.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotOrderUpdate.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotOrderUpdate.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotOrderUpdate.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotOrderUpdate.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotSymbol.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotSymbol.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotSymbol.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotSymbol.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotTicker.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotTicker.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotTicker.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotTriggerOrder.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedSpotTriggerOrder.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedSpotTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedSymbolModel.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedSymbolModel.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedSymbolModel.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedSymbolModel.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedTicker.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedTicker.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedTicker.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedTrade.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedTrade.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedTrade.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedTrade.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedUserTrade.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedUserTrade.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedUserTrade.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedUserTrade.cs diff --git a/CryptoExchange.Net/SharedApis/ResponseModels/SharedWithdrawal.cs b/CryptoExchange.Net/SharedApis/Models/Responses/SharedWithdrawal.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/ResponseModels/SharedWithdrawal.cs rename to CryptoExchange.Net/SharedApis/Models/Responses/SharedWithdrawal.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAllAssetsOptions.cs b/CryptoExchange.Net/SharedApis/V2/Assets/GetAllAssets/GetAllAssetsOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAllAssetsOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Assets/GetAllAssets/GetAllAssetsOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Assets/IGetAllAssetsRest.cs b/CryptoExchange.Net/SharedApis/V2/Assets/GetAllAssets/IGetAllAssets.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Assets/IGetAllAssetsRest.cs rename to CryptoExchange.Net/SharedApis/V2/Assets/GetAllAssets/IGetAllAssets.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAssetOptions.cs b/CryptoExchange.Net/SharedApis/V2/Assets/GetAsset/GetAssetOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAssetOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Assets/GetAsset/GetAssetOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Assets/IGetAssetRest.cs b/CryptoExchange.Net/SharedApis/V2/Assets/GetAsset/IGetAsset.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Assets/IGetAssetRest.cs rename to CryptoExchange.Net/SharedApis/V2/Assets/GetAsset/IGetAsset.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetBalancesOptions.cs b/CryptoExchange.Net/SharedApis/V2/Balances/GetBalances/GetBalancesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetBalancesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Balances/GetBalances/GetBalancesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Balances/IGetBalancesRest.cs b/CryptoExchange.Net/SharedApis/V2/Balances/GetBalances/IGetBalances.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Balances/IGetBalancesRest.cs rename to CryptoExchange.Net/SharedApis/V2/Balances/GetBalances/IGetBalances.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Balances/ISubscribeBalancesSocket.cs b/CryptoExchange.Net/SharedApis/V2/Balances/SubscribeBalances/ISubscribeBalances.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Balances/ISubscribeBalancesSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Balances/SubscribeBalances/ISubscribeBalances.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeBalanceOptions.cs b/CryptoExchange.Net/SharedApis/V2/Balances/SubscribeBalances/SubscribeBalanceOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeBalanceOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Balances/SubscribeBalances/SubscribeBalanceOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetDepositAddressesOptions.cs b/CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositAddresses/GetDepositAddressesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetDepositAddressesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositAddresses/GetDepositAddressesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Deposits/IGetDepositAddressesRest.cs b/CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositAddresses/IGetDepositAddresses.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Deposits/IGetDepositAddressesRest.cs rename to CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositAddresses/IGetDepositAddresses.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetDepositHistoryOptions.cs b/CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositHistory/GetDepositHistoryOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetDepositHistoryOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositHistory/GetDepositHistoryOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Deposits/IGetDepositHistoryRest.cs b/CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositHistory/IGetDepositHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Deposits/IGetDepositHistoryRest.cs rename to CryptoExchange.Net/SharedApis/V2/Deposits/GetDepositHistory/IGetDepositHistory.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFeeOptions.cs b/CryptoExchange.Net/SharedApis/V2/Fees/GetFees/GetFeeOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFeeOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Fees/GetFees/GetFeeOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Fees/IGetFeesRest.cs b/CryptoExchange.Net/SharedApis/V2/Fees/GetFees/IGetFees.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Fees/IGetFeesRest.cs rename to CryptoExchange.Net/SharedApis/V2/Fees/GetFees/IGetFees.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFundingRateHistoryOptions.cs b/CryptoExchange.Net/SharedApis/V2/Funding/GetFundingRateHistory/GetFundingRateHistoryOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFundingRateHistoryOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Funding/GetFundingRateHistory/GetFundingRateHistoryOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Funding/IGetFundingRateHistoryRest.cs b/CryptoExchange.Net/SharedApis/V2/Funding/GetFundingRateHistory/IGetFundingRateHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Funding/IGetFundingRateHistoryRest.cs rename to CryptoExchange.Net/SharedApis/V2/Funding/GetFundingRateHistory/IGetFundingRateHistory.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedApi.cs b/CryptoExchange.Net/SharedApis/V2/ISharedApi.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedApi.cs rename to CryptoExchange.Net/SharedApis/V2/ISharedApi.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedApiCapability.cs b/CryptoExchange.Net/SharedApis/V2/ISharedApiCapability.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedApiCapability.cs rename to CryptoExchange.Net/SharedApis/V2/ISharedApiCapability.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedRest.cs b/CryptoExchange.Net/SharedApis/V2/ISharedRest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedRest.cs rename to CryptoExchange.Net/SharedApis/V2/ISharedRest.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedSocket.cs b/CryptoExchange.Net/SharedApis/V2/ISharedSocket.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedSocket.cs rename to CryptoExchange.Net/SharedApis/V2/ISharedSocket.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedSubscription.cs b/CryptoExchange.Net/SharedApis/V2/ISharedSubscription.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/ISharedSubscription.cs rename to CryptoExchange.Net/SharedApis/V2/ISharedSubscription.cs diff --git a/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrice/GetIndexPriceOptions.cs b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrice/GetIndexPriceOptions.cs new file mode 100644 index 00000000..2037da55 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrice/GetIndexPriceOptions.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for requesting the index price + /// + public class GetIndexPriceOptions : CapabilityOptions + { + /// + public override string Description => "Retrieve the index price for a futures symbol"; + + /// + /// ctor + /// + public GetIndexPriceOptions(string exchange, bool authenticated) : base(exchange, authenticated, nameof(IGetIndexPriceRest.GetIndexPriceAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrice/IGetIndexPrice.cs b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrice/IGetIndexPrice.cs new file mode 100644 index 00000000..a64f5b09 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrice/IGetIndexPrice.cs @@ -0,0 +1,37 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for retrieving the index price for a symbol from an exchange. + /// + public interface IGetIndexPrice : ISharedApiCapability + { + /// + /// Index price request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ GetIndexPriceOptions GetIndexPriceOptions { get; } + /// + /// Get the index price for a symbol, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task> GetIndexPriceAsync(GetIndexPriceRequest request, CancellationToken ct = default); + } + + /// + /// Operation for retrieving the index price for a symbol from an exchange via the REST API. + /// + public interface IGetIndexPriceRest : IGetIndexPrice, ISharedRest + { + /// + new Task> GetIndexPriceAsync(GetIndexPriceRequest request, CancellationToken ct = default); + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrices/GetIndexPricesOptions.cs b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrices/GetIndexPricesOptions.cs new file mode 100644 index 00000000..cedb378b --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrices/GetIndexPricesOptions.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for requesting the index price + /// + public class GetIndexPricesOptions : CapabilityOptions + { + /// + public override string Description => "Retrieve the index prices for all futures symbols"; + + /// + /// ctor + /// + public GetIndexPricesOptions(string exchange, bool authenticated) : base(exchange, authenticated, nameof(IGetIndexPricesRest.GetIndexPricesAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrices/IGetIndexPrices.cs b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrices/IGetIndexPrices.cs new file mode 100644 index 00000000..9acafae2 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/IndexPrice/GetIndexPrices/IGetIndexPrices.cs @@ -0,0 +1,37 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for retrieving the index price for a symbol from an exchange. + /// + public interface IGetIndexPrices : ISharedApiCapability + { + /// + /// Index price request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ GetIndexPricesOptions GetIndexPricesOptions { get; } + /// + /// Get the index price for a symbol, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task> GetIndexPricesAsync(GetIndexPricesRequest request, CancellationToken ct = default); + } + + /// + /// Operation for retrieving the index price for a symbol from an exchange via the REST API. + /// + public interface IGetIndexPricesRest : IGetIndexPrices, ISharedRest + { + /// + new Task> GetIndexPricesAsync(GetIndexPricesRequest request, CancellationToken ct = default); + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetIndexPriceKlinesOptions.cs b/CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetIndexPriceKlines/GetIndexPriceKlinesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetIndexPriceKlinesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetIndexPriceKlines/GetIndexPriceKlinesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/Futures/IGetIndexPriceKlinesRest.cs b/CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetIndexPriceKlines/IGetIndexPriceKlines.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/Futures/IGetIndexPriceKlinesRest.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetIndexPriceKlines/IGetIndexPriceKlines.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetMarkPriceKlinesOptions.cs b/CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetMarkPriceKlines/GetMarkPriceKlinesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetMarkPriceKlinesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetMarkPriceKlines/GetMarkPriceKlinesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/Futures/IGetMarkPriceKlinesRest.cs b/CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetMarkPriceKlines/IGetMarkPriceKlines.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/Futures/IGetMarkPriceKlinesRest.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/Futures/GetMarkPriceKlines/IGetMarkPriceKlines.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetKlinesOptions.cs b/CryptoExchange.Net/SharedApis/V2/Klines/GetKlines/GetKlinesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetKlinesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/GetKlines/GetKlinesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/IGetKlinesRest.cs b/CryptoExchange.Net/SharedApis/V2/Klines/GetKlines/IGetKlines.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/IGetKlinesRest.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/GetKlines/IGetKlines.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/ISubscribeKlinesSocket.cs b/CryptoExchange.Net/SharedApis/V2/Klines/SubscribeKlines/ISubscribeKlines.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Klines/ISubscribeKlinesSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/SubscribeKlines/ISubscribeKlines.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeKlineOptions.cs b/CryptoExchange.Net/SharedApis/V2/Klines/SubscribeKlines/SubscribeKlineOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeKlineOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Klines/SubscribeKlines/SubscribeKlineOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetLeverageOptions.cs b/CryptoExchange.Net/SharedApis/V2/Leverage/GetLeverage/GetLeverageOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetLeverageOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Leverage/GetLeverage/GetLeverageOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Leverage/IGetLeverageRest.cs b/CryptoExchange.Net/SharedApis/V2/Leverage/GetLeverage/IGetLeverage.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Leverage/IGetLeverageRest.cs rename to CryptoExchange.Net/SharedApis/V2/Leverage/GetLeverage/IGetLeverage.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Leverage/ISetLeverageRest.cs b/CryptoExchange.Net/SharedApis/V2/Leverage/SetLeverage/ISetLeverage.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Leverage/ISetLeverageRest.cs rename to CryptoExchange.Net/SharedApis/V2/Leverage/SetLeverage/ISetLeverage.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/SetLeverageOptions.cs b/CryptoExchange.Net/SharedApis/V2/Leverage/SetLeverage/SetLeverageOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/SetLeverageOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Leverage/SetLeverage/SetLeverageOptions.cs diff --git a/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrice/GetMarkPriceOptions.cs b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrice/GetMarkPriceOptions.cs new file mode 100644 index 00000000..33e806ba --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrice/GetMarkPriceOptions.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for requesting the mark price + /// + public class GetMarkPriceOptions : CapabilityOptions + { + /// + public override string Description => "Retrieve the mark price for a futures symbol"; + + /// + /// ctor + /// + public GetMarkPriceOptions(string exchange, bool authenticated) : base(exchange, authenticated, nameof(IGetMarkPriceRest.GetMarkPriceAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrice/IGetMarkPrice.cs b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrice/IGetMarkPrice.cs new file mode 100644 index 00000000..3ebec787 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrice/IGetMarkPrice.cs @@ -0,0 +1,37 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for retrieving the mark price for a symbol from an exchange. + /// + public interface IGetMarkPrice : ISharedApiCapability + { + /// + /// Mark price request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ GetMarkPriceOptions GetMarkPriceOptions { get; } + /// + /// Get the mark price for a symbol, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task> GetMarkPriceAsync(GetMarkPriceRequest request, CancellationToken ct = default); + } + + /// + /// Operation for retrieving the mark price for a symbol from an exchange via the REST API. + /// + public interface IGetMarkPriceRest : IGetMarkPrice, ISharedRest + { + /// + new Task> GetMarkPriceAsync(GetMarkPriceRequest request, CancellationToken ct = default); + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrices/GetMarkPricesOptions.cs b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrices/GetMarkPricesOptions.cs new file mode 100644 index 00000000..084a00fa --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrices/GetMarkPricesOptions.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for requesting the mark price + /// + public class GetMarkPricesOptions : CapabilityOptions + { + /// + public override string Description => "Retrieve the mark prices for all futures symbols"; + + /// + /// ctor + /// + public GetMarkPricesOptions(string exchange, bool authenticated) : base(exchange, authenticated, nameof(IGetMarkPricesRest.GetMarkPricesAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrices/IGetMarkPrices.cs b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrices/IGetMarkPrices.cs new file mode 100644 index 00000000..776911c4 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/MarkPrice/GetMarkPrices/IGetMarkPrices.cs @@ -0,0 +1,37 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for retrieving the mark price for a symbol from an exchange. + /// + public interface IGetMarkPrices : ISharedApiCapability + { + /// + /// Mark price request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ GetMarkPricesOptions GetMarkPricesOptions { get; } + /// + /// Get the mark price for a symbol, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task> GetMarkPricesAsync(GetMarkPricesRequest request, CancellationToken ct = default); + } + + /// + /// Operation for retrieving the mark price for a symbol from an exchange via the REST API. + /// + public interface IGetMarkPricesRest : IGetMarkPrices, ISharedRest + { + /// + new Task> GetMarkPricesAsync(GetMarkPricesRequest request, CancellationToken ct = default); + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOpenInterestOptions.cs b/CryptoExchange.Net/SharedApis/V2/OpenInterest/GetOpenInterestOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOpenInterestOptions.cs rename to CryptoExchange.Net/SharedApis/V2/OpenInterest/GetOpenInterestOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/OpenInterest/IGetOpenInterestRest.cs b/CryptoExchange.Net/SharedApis/V2/OpenInterest/IGetOpenInterest.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/OpenInterest/IGetOpenInterestRest.cs rename to CryptoExchange.Net/SharedApis/V2/OpenInterest/IGetOpenInterest.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetBookTickerOptions.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/GetBookTicker/GetBookTickerOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetBookTickerOptions.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/GetBookTicker/GetBookTickerOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/IGetBookTickerRest.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/GetBookTicker/IGetBookTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/IGetBookTickerRest.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/GetBookTicker/IGetBookTicker.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOrderBookOptions.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/GetOrderBook/GetOrderBookOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOrderBookOptions.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/GetOrderBook/GetOrderBookOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/IGetOrderBookRest.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/GetOrderBook/IGetOrderBook.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/IGetOrderBookRest.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/GetOrderBook/IGetOrderBook.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/ISubscribeIncrementalOrderBookSocket.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeIncrementalOrderBook/ISubscribeIncrementalOrderBook.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/ISubscribeIncrementalOrderBookSocket.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeIncrementalOrderBook/ISubscribeIncrementalOrderBook.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeIncrementalOrderBookOptions.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeIncrementalOrderBook/SubscribeIncrementalOrderBookOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeIncrementalOrderBookOptions.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeIncrementalOrderBook/SubscribeIncrementalOrderBookOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/ISubscribeOrderBookSocket.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeOrderBook/ISubscribeOrderBook.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/OrderBooks/ISubscribeOrderBookSocket.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeOrderBook/ISubscribeOrderBook.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeOrderBookOptions.cs b/CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeOrderBook/SubscribeOrderBookOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeOrderBookOptions.cs rename to CryptoExchange.Net/SharedApis/V2/OrderBooks/SubscribeOrderBook/SubscribeOrderBookOptions.cs diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesOrders/CancelAllFuturesOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesOrders/CancelAllFuturesOrdersOptions.cs new file mode 100644 index 00000000..aa3b3f99 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesOrders/CancelAllFuturesOrdersOptions.cs @@ -0,0 +1,23 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for canceling all open Futures orders + /// + public class CancelAllFuturesOrdersOptions : CapabilityOptions + { + /// + public override string Description => "Cancel all Futures orders"; + + /// + /// ctor + /// + public CancelAllFuturesOrdersOptions(string exchange) : base(exchange, true, nameof(ICancelAllFuturesOrders.CancelAllFuturesOrdersAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesOrders/ICancelAllFuturesOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesOrders/ICancelAllFuturesOrder.cs new file mode 100644 index 00000000..1f623135 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesOrders/ICancelAllFuturesOrder.cs @@ -0,0 +1,47 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for canceling all Futures orders on an exchange. + /// + public interface ICancelAllFuturesOrders : ISharedApiCapability + { + /// + /// Futures cancel all orders request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ CancelAllFuturesOrdersOptions CancelAllFuturesOrdersOptions { get; } + /// + /// Cancel all Futures orders, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task CancelAllFuturesOrdersAsync(CancelAllOrdersRequest request, CancellationToken ct = default); + } + + /// + /// Operation for canceling all Futures orders on an exchange via the REST API. + /// + public interface ICancelAllFuturesOrdersRest : ICancelAllFuturesOrders, ISharedRest + { + /// + new Task CancelAllFuturesOrdersAsync(CancelAllOrdersRequest request, CancellationToken ct = default); + } + + /// + /// Operation for canceling all Futures orders on an exchange via the WebSocket API. + /// + public interface ICancelAllFuturesOrdersSocket : ICancelAllFuturesOrders, ISharedSocket + { + /// + new Task CancelAllFuturesOrdersAsync(CancelAllOrdersRequest request, CancellationToken ct = default); + + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesSymbolOrders/CancelAllFuturesSymbolOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesSymbolOrders/CancelAllFuturesSymbolOrdersOptions.cs new file mode 100644 index 00000000..01f987d1 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesSymbolOrders/CancelAllFuturesSymbolOrdersOptions.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for canceling all open futures orders for a specific symbol + /// + public class CancelAllFuturesSymbolOrdersOptions : CapabilityOptions + { + /// + public override string Description => "Cancel all open futures orders for a specific symbol"; + + /// + /// ctor + /// + public CancelAllFuturesSymbolOrdersOptions(string exchange, bool authenticated) : base(exchange, authenticated, nameof(ICancelAllFuturesSymbolOrders.CancelAllFuturesSymbolOrdersAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesSymbolOrders/ICancelAllFuturesSymbolOrders.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesSymbolOrders/ICancelAllFuturesSymbolOrders.cs new file mode 100644 index 00000000..2c9714a8 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelAllFuturesSymbolOrders/ICancelAllFuturesSymbolOrders.cs @@ -0,0 +1,48 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for canceling all open futures orders for a specific symbol on an exchange. + /// + public interface ICancelAllFuturesSymbolOrders : ISharedApiCapability + { + /// + /// Futures cancel order request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ CancelAllFuturesSymbolOrdersOptions CancelAllFuturesSymbolOrdersOptions { get; } + /// + /// Cancel all open futures orders for a specific symbol, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task CancelAllFuturesSymbolOrdersAsync(CancelAllSymbolOrdersRequest request, CancellationToken ct = default); + } + + /// + /// Operation for canceling all open futures orders for a specific symbol on an exchange via the REST API. + /// + public interface ICancelAllFuturesSymbolOrdersRest : ICancelAllFuturesSymbolOrders, ISharedRest + { + /// + new Task CancelAllFuturesSymbolOrdersAsync(CancelAllSymbolOrdersRequest request, CancellationToken ct = default); + + } + + /// + /// Operation for canceling all open futures orders for a specific symbol on an exchange via the WebSocket API. + /// + public interface ICancelAllFuturesSymbolOrdersSocket : ICancelAllFuturesSymbolOrders, ISharedSocket + { + /// + new Task> CancelAllFuturesSymbolOrdersAsync(CancelAllSymbolOrdersRequest request, CancellationToken ct = default); + + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrder/CancelFuturesOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrder/CancelFuturesOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ICancelFuturesOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrder/ICancelFuturesOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ICancelFuturesOrder.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrder/ICancelFuturesOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesOrderByClientOrderIdOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrderByClientOrderId/CancelFuturesOrderByClientOrderIdOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesOrderByClientOrderIdOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrderByClientOrderId/CancelFuturesOrderByClientOrderIdOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ICancelFuturesOrderByClientOrderId.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrderByClientOrderId/ICancelFuturesOrderByClientOrderId.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ICancelFuturesOrderByClientOrderId.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/CancelFuturesOrderByClientOrderId/ICancelFuturesOrderByClientOrderId.cs diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Futures/EditFuturesOrder/EditFuturesOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/EditFuturesOrder/EditFuturesOrderOptions.cs new file mode 100644 index 00000000..4aecd52d --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/EditFuturesOrder/EditFuturesOrderOptions.cs @@ -0,0 +1,23 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Linq; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for editing an open Futures order + /// + public class EditFuturesOrderOptions : CapabilityOptions + { + /// + public override string Description => "Edit an existing Futures order"; + + + /// + /// ctor + /// + public EditFuturesOrderOptions(string exchange) : base(exchange, true, nameof(IEditFuturesOrder.EditFuturesOrderAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Futures/EditFuturesOrder/IEditFuturesOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/EditFuturesOrder/IEditFuturesOrder.cs new file mode 100644 index 00000000..6afe6c57 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/EditFuturesOrder/IEditFuturesOrder.cs @@ -0,0 +1,49 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for editing an open Futures order on an exchange. + /// + public interface IEditFuturesOrder : ISharedApiCapability + { + /// + /// Futures edit order request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ EditFuturesOrderOptions EditFuturesOrderOptions { get; } + + /// + /// Edit an existing Futures order, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task> EditFuturesOrderAsync( + EditFuturesOrderRequest request, + CancellationToken ct = default); + } + + /// + /// Operation for editing a Futures order on an exchange via the REST API. + /// + public interface IEditFuturesOrderRest : IEditFuturesOrder, ISharedRest + { + /// + new Task> EditFuturesOrderAsync(EditFuturesOrderRequest request, CancellationToken ct = default); + } + + /// + /// Operation for editing a Futures order on an exchange via the WebSocket API. + /// + public interface IEditFuturesOrderSocket : IEditFuturesOrder, ISharedSocket + { + /// + new Task> EditFuturesOrderAsync(EditFuturesOrderRequest request, CancellationToken ct = default); + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesClosedOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetClosedFuturesOrders/GetFuturesClosedOrdersOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesClosedOrdersOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetClosedFuturesOrders/GetFuturesClosedOrdersOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetClosedFuturesOrders.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetClosedFuturesOrders/IGetClosedFuturesOrders.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetClosedFuturesOrders.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetClosedFuturesOrders/IGetClosedFuturesOrders.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrder/GetFuturesOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrder/GetFuturesOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetFuturesOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrder/IGetFuturesOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetFuturesOrder.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrder/IGetFuturesOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesOrderByClientOrderIdOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrderByClientOrderId/GetFuturesOrderByClientOrderIdOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesOrderByClientOrderIdOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrderByClientOrderId/GetFuturesOrderByClientOrderIdOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetFuturesOrderByClientOrderId.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrderByClientOrderId/IGetFuturesOrderByClientOrderId.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetFuturesOrderByClientOrderId.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetFuturesOrderByClientOrderId/IGetFuturesOrderByClientOrderId.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOpenFuturesOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetOpenFuturesOrders/GetOpenFuturesOrdersOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOpenFuturesOrdersOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetOpenFuturesOrders/GetOpenFuturesOrdersOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetOpenFuturesOrders.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetOpenFuturesOrders/IGetOpenFuturesOrders.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IGetOpenFuturesOrders.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/GetOpenFuturesOrders/IGetOpenFuturesOrders.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IPlaceFuturesOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/PlaceFuturesOrder/IPlaceFuturesOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/IPlaceFuturesOrder.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/PlaceFuturesOrder/IPlaceFuturesOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceFuturesOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/PlaceFuturesOrder/PlaceFuturesOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceFuturesOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/PlaceFuturesOrder/PlaceFuturesOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ISubscribeFuturesOrdersSocket.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/SubscribeFuturesOrder/ISubscribeFuturesOrdersSocket.cs similarity index 94% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ISubscribeFuturesOrdersSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/SubscribeFuturesOrder/ISubscribeFuturesOrdersSocket.cs index 8a1eeb2a..d84748ff 100644 --- a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ISubscribeFuturesOrdersSocket.cs +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/SubscribeFuturesOrder/ISubscribeFuturesOrdersSocket.cs @@ -7,7 +7,7 @@ using System.Threading.Tasks; namespace CryptoExchange.Net.SharedApis { /// - /// Client for subscribing to user futures order updates + /// Operation for subscribing to user futures order updates /// public interface ISubscribeFuturesOrdersSocket : ISharedSubscription { diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeFuturesOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Futures/SubscribeFuturesOrder/SubscribeFuturesOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeFuturesOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Futures/SubscribeFuturesOrder/SubscribeFuturesOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotOrders/CancelAllSpotOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotOrders/CancelAllSpotOrdersOptions.cs new file mode 100644 index 00000000..fe5499f5 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotOrders/CancelAllSpotOrdersOptions.cs @@ -0,0 +1,23 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for canceling all open spot orders + /// + public class CancelAllSpotOrdersOptions : CapabilityOptions + { + /// + public override string Description => "Cancel all spot orders"; + + /// + /// ctor + /// + public CancelAllSpotOrdersOptions(string exchange) : base(exchange, true, nameof(ICancelAllSpotOrders.CancelAllSpotOrdersAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotOrders/ICancelAllSpotOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotOrders/ICancelAllSpotOrder.cs new file mode 100644 index 00000000..6da0bead --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotOrders/ICancelAllSpotOrder.cs @@ -0,0 +1,47 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for canceling all spot orders on an exchange. + /// + public interface ICancelAllSpotOrders : ISharedApiCapability + { + /// + /// Spot cancel all orders request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ CancelAllSpotOrdersOptions CancelAllSpotOrdersOptions { get; } + /// + /// Cancel all spot orders, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task CancelAllSpotOrdersAsync(CancelAllOrdersRequest request, CancellationToken ct = default); + } + + /// + /// Operation for canceling all spot orders on an exchange via the REST API. + /// + public interface ICancelAllSpotOrdersRest : ICancelAllSpotOrders, ISharedRest + { + /// + new Task CancelAllSpotOrdersAsync(CancelAllOrdersRequest request, CancellationToken ct = default); + } + + /// + /// Operation for canceling all spot orders on an exchange via the WebSocket API. + /// + public interface ICancelAllSpotOrdersSocket : ICancelAllSpotOrders, ISharedSocket + { + /// + new Task CancelAllSpotOrdersAsync(CancelAllOrdersRequest request, CancellationToken ct = default); + + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotSymbolOrders/CancelAllSpotSymbolOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotSymbolOrders/CancelAllSpotSymbolOrdersOptions.cs new file mode 100644 index 00000000..7103ae36 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotSymbolOrders/CancelAllSpotSymbolOrdersOptions.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for canceling all open Spot orders for a specific symbol + /// + public class CancelAllSpotSymbolOrdersOptions : CapabilityOptions + { + /// + public override string Description => "Cancel all open Spot orders for a specific symbol"; + + /// + /// ctor + /// + public CancelAllSpotSymbolOrdersOptions(string exchange, bool authenticated) : base(exchange, authenticated, nameof(ICancelAllSpotSymbolOrders.CancelAllSpotSymbolOrdersAsync)) + { + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotSymbolOrders/ICancelAllSpotSymbolOrders.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotSymbolOrders/ICancelAllSpotSymbolOrders.cs new file mode 100644 index 00000000..1dde9b8e --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelAllSpotSymbolOrders/ICancelAllSpotSymbolOrders.cs @@ -0,0 +1,48 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for canceling all open Spot orders for a specific symbol on an exchange. + /// + public interface ICancelAllSpotSymbolOrders : ISharedApiCapability + { + /// + /// Spot cancel order request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ CancelAllSpotSymbolOrdersOptions CancelAllSpotSymbolOrdersOptions { get; } + /// + /// Cancel all open Spot orders for a specific symbol, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task CancelAllSpotSymbolOrdersAsync(CancelAllSymbolOrdersRequest request, CancellationToken ct = default); + } + + /// + /// Operation for canceling all open Spot orders for a specific symbol on an exchange via the REST API. + /// + public interface ICancelAllSpotSymbolOrdersRest : ICancelAllSpotSymbolOrders, ISharedRest + { + /// + new Task CancelAllSpotSymbolOrdersAsync(CancelAllSymbolOrdersRequest request, CancellationToken ct = default); + + } + + /// + /// Operation for canceling all open Spot orders for a specific symbol on an exchange via the WebSocket API. + /// + public interface ICancelAllSpotSymbolOrdersSocket : ICancelAllSpotSymbolOrders, ISharedSocket + { + /// + new Task> CancelAllSpotSymbolOrdersAsync(CancelAllSymbolOrdersRequest request, CancellationToken ct = default); + + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelSpotOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrder/CancelSpotOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelSpotOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrder/CancelSpotOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/ICancelSpotOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrder/ICancelSpotOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/ICancelSpotOrder.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrder/ICancelSpotOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelSpotOrderByClientOrderIdOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrderByClientOrderId/CancelSpotOrderByClientOrderIdOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelSpotOrderByClientOrderIdOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrderByClientOrderId/CancelSpotOrderByClientOrderIdOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/ICancelSpotOrderByClientOrderId.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrderByClientOrderId/ICancelSpotOrderByClientOrderId.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/ICancelSpotOrderByClientOrderId.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/CancelSpotOrderByClientOrderId/ICancelSpotOrderByClientOrderId.cs diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Spot/EditSpotOrder/EditSpotOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/EditSpotOrder/EditSpotOrderOptions.cs new file mode 100644 index 00000000..36f7bfc3 --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/EditSpotOrder/EditSpotOrderOptions.cs @@ -0,0 +1,36 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Linq; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Options for editing an open spot order + /// + public class EditSpotOrderOptions : CapabilityOptions + { + /// + public override string Description => "Edit an existing spot order"; + + + /// + /// ctor + /// + public EditSpotOrderOptions(string exchange) : base(exchange, true, nameof(IEditSpotOrder.EditSpotOrderAsync)) + { + } + + /// + /// Validate a request + /// + public override Error? ValidateRequest( + EditSpotOrderRequest request, + IEditSpotOrder client) + { + if (request.Symbol!.TradingMode != TradingMode.Spot) + return ArgumentError.Invalid("TradingMode", $"TradingMode.{request.Symbol!.TradingMode} is not supported, should be Spot"); + + return base.ValidateRequest(request, client); + } + } +} diff --git a/CryptoExchange.Net/SharedApis/V2/Orders/Spot/EditSpotOrder/IEditSpotOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/EditSpotOrder/IEditSpotOrder.cs new file mode 100644 index 00000000..4f0cd8db --- /dev/null +++ b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/EditSpotOrder/IEditSpotOrder.cs @@ -0,0 +1,49 @@ +using CryptoExchange.Net.Objects; +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace CryptoExchange.Net.SharedApis +{ + /// + /// Operation for editing an open spot order on an exchange. + /// + public interface IEditSpotOrder : ISharedApiCapability + { + /// + /// Spot edit order request options.
+ /// Use , and to check for required and optional parameters for the request.
+ /// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. + ///
+ EditSpotOrderOptions EditSpotOrderOptions { get; } + + /// + /// Edit an existing spot order, see for request options and exchange specific required/optional parameters.
+ ///
+ /// Request info + /// Cancellation token + Task> EditSpotOrderAsync( + EditSpotOrderRequest request, + CancellationToken ct = default); + } + + /// + /// Operation for editing a spot order on an exchange via the REST API. + /// + public interface IEditSpotOrderRest : IEditSpotOrder, ISharedRest + { + /// + new Task> EditSpotOrderAsync(EditSpotOrderRequest request, CancellationToken ct = default); + } + + /// + /// Operation for editing a spot order on an exchange via the WebSocket API. + /// + public interface IEditSpotOrderSocket : IEditSpotOrder, ISharedSocket + { + /// + new Task> EditSpotOrderAsync(EditSpotOrderRequest request, CancellationToken ct = default); + } +} diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotClosedOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetClosedSpotOrders/GetSpotClosedOrdersOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotClosedOrdersOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetClosedSpotOrders/GetSpotClosedOrdersOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetClosedSpotOrders.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetClosedSpotOrders/IGetClosedSpotOrders.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetClosedSpotOrders.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetClosedSpotOrders/IGetClosedSpotOrders.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOpenSpotOrdersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetOpenSpotOrders/GetOpenSpotOrdersOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetOpenSpotOrdersOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetOpenSpotOrders/GetOpenSpotOrdersOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetOpenSpotOrders.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetOpenSpotOrders/IGetOpenSpotOrders.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetOpenSpotOrders.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetOpenSpotOrders/IGetOpenSpotOrders.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrder/GetSpotOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrder/GetSpotOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetSpotOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrder/IGetSpotOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetSpotOrder.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrder/IGetSpotOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotOrderByClientOrderIdOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrderByClientOrderId/GetSpotOrderByClientOrderIdOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotOrderByClientOrderIdOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrderByClientOrderId/GetSpotOrderByClientOrderIdOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetSpotOrderByClientOrderId.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrderByClientOrderId/IGetSpotOrderByClientOrderId.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IGetSpotOrderByClientOrderId.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/GetSpotOrderByClientOrderId/IGetSpotOrderByClientOrderId.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IPlaceSpotOrder.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/PlaceSpotOrder/IPlaceSpotOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/IPlaceSpotOrder.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/PlaceSpotOrder/IPlaceSpotOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceSpotOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/PlaceSpotOrder/PlaceSpotOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceSpotOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/PlaceSpotOrder/PlaceSpotOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/ISubscribeSpotOrdersSocket.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/SubscribeSpotOrder/ISubscribeSpotOrdersSocket.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Spot/ISubscribeSpotOrdersSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/SubscribeSpotOrder/ISubscribeSpotOrdersSocket.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeSpotOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/Orders/Spot/SubscribeSpotOrder/SubscribeSpotOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeSpotOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Orders/Spot/SubscribeSpotOrder/SubscribeSpotOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetPositionModeOptions.cs b/CryptoExchange.Net/SharedApis/V2/PositionMode/GetPositionMode/GetPositionModeOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetPositionModeOptions.cs rename to CryptoExchange.Net/SharedApis/V2/PositionMode/GetPositionMode/GetPositionModeOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/PositionMode/IGetPositionModeRest.cs b/CryptoExchange.Net/SharedApis/V2/PositionMode/GetPositionMode/IGetPositionMode.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/PositionMode/IGetPositionModeRest.cs rename to CryptoExchange.Net/SharedApis/V2/PositionMode/GetPositionMode/IGetPositionMode.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/PositionMode/ISetPositionModeRest.cs b/CryptoExchange.Net/SharedApis/V2/PositionMode/SetPositionMode/ISetPositionMode.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/PositionMode/ISetPositionModeRest.cs rename to CryptoExchange.Net/SharedApis/V2/PositionMode/SetPositionMode/ISetPositionMode.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/SetPositionModeOptions.cs b/CryptoExchange.Net/SharedApis/V2/PositionMode/SetPositionMode/SetPositionModeOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/SetPositionModeOptions.cs rename to CryptoExchange.Net/SharedApis/V2/PositionMode/SetPositionMode/SetPositionModeOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/ClosePositionOptions.cs b/CryptoExchange.Net/SharedApis/V2/Positions/ClosePosition/ClosePositionOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/ClosePositionOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/ClosePosition/ClosePositionOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Positions/IClosePositionRest.cs b/CryptoExchange.Net/SharedApis/V2/Positions/ClosePosition/IClosePosition.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Positions/IClosePositionRest.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/ClosePosition/IClosePosition.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetPositionHistoryOptions.cs b/CryptoExchange.Net/SharedApis/V2/Positions/GetPositionHistory/GetPositionHistoryOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetPositionHistoryOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/GetPositionHistory/GetPositionHistoryOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Positions/IGetPositionHistoryRest.cs b/CryptoExchange.Net/SharedApis/V2/Positions/GetPositionHistory/IGetPositionHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Positions/IGetPositionHistoryRest.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/GetPositionHistory/IGetPositionHistory.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetPositionsOptions.cs b/CryptoExchange.Net/SharedApis/V2/Positions/GetPositions/GetPositionsOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetPositionsOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/GetPositions/GetPositionsOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Positions/IGetPositionsRest.cs b/CryptoExchange.Net/SharedApis/V2/Positions/GetPositions/IGetPositions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Positions/IGetPositionsRest.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/GetPositions/IGetPositions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ISubscribePositionsSocket.cs b/CryptoExchange.Net/SharedApis/V2/Positions/SubscribePositions/ISubscribePositions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Orders/Futures/ISubscribePositionsSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/SubscribePositions/ISubscribePositions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribePositionOptions.cs b/CryptoExchange.Net/SharedApis/V2/Positions/SubscribePositions/SubscribePositionOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribePositionOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Positions/SubscribePositions/SubscribePositionOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesSymbolsOptions.cs b/CryptoExchange.Net/SharedApis/V2/Symbols/GetFuturesSymbols/GetFuturesSymbolsOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesSymbolsOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Symbols/GetFuturesSymbols/GetFuturesSymbolsOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Symbols/Futures/IGetFuturesSymbolsRest.cs b/CryptoExchange.Net/SharedApis/V2/Symbols/GetFuturesSymbols/IGetFuturesSymbols.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Symbols/Futures/IGetFuturesSymbolsRest.cs rename to CryptoExchange.Net/SharedApis/V2/Symbols/GetFuturesSymbols/IGetFuturesSymbols.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotSymbolsOptions.cs b/CryptoExchange.Net/SharedApis/V2/Symbols/GetSpotSymbols/GetSpotSymbolsOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotSymbolsOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Symbols/GetSpotSymbols/GetSpotSymbolsOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Symbols/Spot/IGetSpotSymbolsRest.cs b/CryptoExchange.Net/SharedApis/V2/Symbols/GetSpotSymbols/IGetSpotSymbols.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Symbols/Spot/IGetSpotSymbolsRest.cs rename to CryptoExchange.Net/SharedApis/V2/Symbols/GetSpotSymbols/IGetSpotSymbols.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAllFuturesTickersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetAllFuturesTicker/GetAllFuturesTickersOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAllFuturesTickersOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetAllFuturesTicker/GetAllFuturesTickersOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Futures/IGetAllFuturesTickersRest.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetAllFuturesTicker/IGetAllFuturesTickers.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Futures/IGetAllFuturesTickersRest.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetAllFuturesTicker/IGetAllFuturesTickers.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesTickerOptions.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetFuturesTicker/GetFuturesTickerOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesTickerOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetFuturesTicker/GetFuturesTickerOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Futures/IGetFuturesTickerRest.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetFuturesTicker/IGetFuturesTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Futures/IGetFuturesTickerRest.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Futures/GetFuturesTicker/IGetFuturesTicker.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAllSpotTickersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetAllSpotTickers/GetAllSpotTickersOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetAllSpotTickersOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetAllSpotTickers/GetAllSpotTickersOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Spot/IGetAllSpotTickersRest.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetAllSpotTickers/IGetAllSpotTickers.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Spot/IGetAllSpotTickersRest.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetAllSpotTickers/IGetAllSpotTickers.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotTickerOptions.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetSpotTicker/GetSpotTickerOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotTickerOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetSpotTicker/GetSpotTickerOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Spot/IGetSpotTickerRest.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetSpotTicker/IGetSpotTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/Spot/IGetSpotTickerRest.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/Spot/GetSpotTicker/IGetSpotTicker.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/ISubscribeAllTickersSocket.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeAllTickers/ISubscribeAllTickers.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/ISubscribeAllTickersSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeAllTickers/ISubscribeAllTickers.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeTickersOptions.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeAllTickers/SubscribeTickersOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeTickersOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeAllTickers/SubscribeTickersOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/ISubscribeBookTickerSocket.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeBookTicker/ISubscribeBookTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/ISubscribeBookTickerSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeBookTicker/ISubscribeBookTicker.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeBookTickerOptions.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeBookTicker/SubscribeBookTickerOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeBookTickerOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeBookTicker/SubscribeBookTickerOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/ISubscribeTickerSocket.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeTicker/ISubscribeTicker.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Tickers/ISubscribeTickerSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeTicker/ISubscribeTicker.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeTickerOptions.cs b/CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeTicker/SubscribeTickerOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeTickerOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Tickers/SubscribeTicker/SubscribeTickerOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesTpSlOptions.cs b/CryptoExchange.Net/SharedApis/V2/TpSl/CancelFuturesTpSl/CancelFuturesTpSlOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesTpSlOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TpSl/CancelFuturesTpSl/CancelFuturesTpSlOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TpSl/ICancelFuturesTpSlRest.cs b/CryptoExchange.Net/SharedApis/V2/TpSl/CancelFuturesTpSl/ICancelFuturesTpSl.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TpSl/ICancelFuturesTpSlRest.cs rename to CryptoExchange.Net/SharedApis/V2/TpSl/CancelFuturesTpSl/ICancelFuturesTpSl.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TpSl/ISetFuturesTpSlRest.cs b/CryptoExchange.Net/SharedApis/V2/TpSl/SetFuturesTpSl/ISetFuturesTpSl.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TpSl/ISetFuturesTpSlRest.cs rename to CryptoExchange.Net/SharedApis/V2/TpSl/SetFuturesTpSl/ISetFuturesTpSl.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/SetFuturesTpSlOptions.cs b/CryptoExchange.Net/SharedApis/V2/TpSl/SetFuturesTpSl/SetFuturesTpSlOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/SetFuturesTpSlOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TpSl/SetFuturesTpSl/SetFuturesTpSlOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetRecentTradesOptions.cs b/CryptoExchange.Net/SharedApis/V2/Trades/GetRecentTrades/GetRecentTradesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetRecentTradesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Trades/GetRecentTrades/GetRecentTradesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Trades/IGetRecentTradesRest.cs b/CryptoExchange.Net/SharedApis/V2/Trades/GetRecentTrades/IGetRecentTrades.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Trades/IGetRecentTradesRest.cs rename to CryptoExchange.Net/SharedApis/V2/Trades/GetRecentTrades/IGetRecentTrades.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetTradeHistoryOptions.cs b/CryptoExchange.Net/SharedApis/V2/Trades/GetTradeHistory/GetTradeHistoryOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetTradeHistoryOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Trades/GetTradeHistory/GetTradeHistoryOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Trades/IGetTradeHistoryRest.cs b/CryptoExchange.Net/SharedApis/V2/Trades/GetTradeHistory/IGetTradeHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Trades/IGetTradeHistoryRest.cs rename to CryptoExchange.Net/SharedApis/V2/Trades/GetTradeHistory/IGetTradeHistory.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Trades/ISubscribeTradesSocket.cs b/CryptoExchange.Net/SharedApis/V2/Trades/SubscribeTrades/ISubscribeTrades.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Trades/ISubscribeTradesSocket.cs rename to CryptoExchange.Net/SharedApis/V2/Trades/SubscribeTrades/ISubscribeTrades.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeTradeOptions.cs b/CryptoExchange.Net/SharedApis/V2/Trades/SubscribeTrades/SubscribeTradeOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeTradeOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Trades/SubscribeTrades/SubscribeTradeOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Transfers/ITransferRest.cs b/CryptoExchange.Net/SharedApis/V2/Transfers/ITransfer.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Transfers/ITransferRest.cs rename to CryptoExchange.Net/SharedApis/V2/Transfers/ITransfer.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/TransferOptions.cs b/CryptoExchange.Net/SharedApis/V2/Transfers/TransferOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/TransferOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Transfers/TransferOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesTriggerOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/CancelFuturesTriggerOrder/CancelFuturesTriggerOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelFuturesTriggerOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/CancelFuturesTriggerOrder/CancelFuturesTriggerOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Futures/ICancelFuturesTriggerOrderRest.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/CancelFuturesTriggerOrder/ICancelFuturesTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Futures/ICancelFuturesTriggerOrderRest.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/CancelFuturesTriggerOrder/ICancelFuturesTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesTriggerOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/GetFuturesTriggerOrder/GetFuturesTriggerOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesTriggerOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/GetFuturesTriggerOrder/GetFuturesTriggerOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Futures/IGetFuturesTriggerOrderRest.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/GetFuturesTriggerOrder/IGetFuturesTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Futures/IGetFuturesTriggerOrderRest.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/GetFuturesTriggerOrder/IGetFuturesTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Futures/IPlaceFuturesTriggerOrderRest.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/PlaceFuturesTriggerOrder/IPlaceFuturesTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Futures/IPlaceFuturesTriggerOrderRest.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/PlaceFuturesTriggerOrder/IPlaceFuturesTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceFuturesTriggerOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/PlaceFuturesTriggerOrder/PlaceFuturesTriggerOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceFuturesTriggerOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Futures/PlaceFuturesTriggerOrder/PlaceFuturesTriggerOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelSpotTriggerOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/CancelSpotTriggerOrder/CancelSpotTriggerOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/CancelSpotTriggerOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/CancelSpotTriggerOrder/CancelSpotTriggerOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Spot/ICancelSpotTriggerOrderRest.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/CancelSpotTriggerOrder/ICancelSpotTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Spot/ICancelSpotTriggerOrderRest.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/CancelSpotTriggerOrder/ICancelSpotTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotTriggerOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/GetSpotTriggerOrder/GetSpotTriggerOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotTriggerOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/GetSpotTriggerOrder/GetSpotTriggerOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Spot/IGetSpotTriggerOrderRest.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/GetSpotTriggerOrder/IGetSpotTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Spot/IGetSpotTriggerOrderRest.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/GetSpotTriggerOrder/IGetSpotTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Spot/IPlaceSpotTriggerOrderRest.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/PlaceSpotTriggerOrder/IPlaceSpotTriggerOrder.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/TriggerOrders/Spot/IPlaceSpotTriggerOrderRest.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/PlaceSpotTriggerOrder/IPlaceSpotTriggerOrder.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceSpotTriggerOrderOptions.cs b/CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/PlaceSpotTriggerOrder/PlaceSpotTriggerOrderOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/PlaceSpotTriggerOrderOptions.cs rename to CryptoExchange.Net/SharedApis/V2/TriggerOrders/Spot/PlaceSpotTriggerOrder/PlaceSpotTriggerOrderOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesOrderTradesOptions.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesOrderTrades/GetFuturesOrderTradesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesOrderTradesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesOrderTrades/GetFuturesOrderTradesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Futures/IGetFuturesOrderTradesRest.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesOrderTrades/IGetFuturesOrderTrades.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Futures/IGetFuturesOrderTradesRest.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesOrderTrades/IGetFuturesOrderTrades.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesUserTradeHistoryOptions.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesUserTradeHistory/GetFuturesUserTradeHistoryOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetFuturesUserTradeHistoryOptions.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesUserTradeHistory/GetFuturesUserTradeHistoryOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Futures/IGetFuturesUserTradeHistoryRest.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesUserTradeHistory/IGetFuturesUserTradeHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Futures/IGetFuturesUserTradeHistoryRest.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Futures/GetFuturesUserTradeHistory/IGetFuturesUserTradeHistory.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotOrderTradesOptions.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotOrderTrades/GetSpotOrderTradesOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotOrderTradesOptions.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotOrderTrades/GetSpotOrderTradesOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Spot/IGetSpotOrderTradesRest.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotOrderTrades/IGetSpotOrderTrades.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Spot/IGetSpotOrderTradesRest.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotOrderTrades/IGetSpotOrderTrades.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotUserTradeHistoryOptions.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotUserTradeHistory/GetSpotUserTradeHistoryOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetSpotUserTradeHistoryOptions.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotUserTradeHistory/GetSpotUserTradeHistoryOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Spot/IGetSpotUserTradeHistoryRest.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotUserTradeHistory/IGetSpotUserTradeHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/Spot/IGetSpotUserTradeHistoryRest.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/Spot/GetSpotUserTradeHistory/IGetSpotUserTradeHistory.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/ISubscribeUserTradesSocket.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/SubscribeUserTrades/ISubscribeUserTrades.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/UserTrades/ISubscribeUserTradesSocket.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/SubscribeUserTrades/ISubscribeUserTrades.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeUserTradeOptions.cs b/CryptoExchange.Net/SharedApis/V2/UserTrades/SubscribeUserTrades/SubscribeUserTradeOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Operations/SubscribeUserTradeOptions.cs rename to CryptoExchange.Net/SharedApis/V2/UserTrades/SubscribeUserTrades/SubscribeUserTradeOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetWithdrawalHistoryOptions.cs b/CryptoExchange.Net/SharedApis/V2/Withdrawals/GetWithdrawalHistory/GetWithdrawalHistoryOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/GetWithdrawalHistoryOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Withdrawals/GetWithdrawalHistory/GetWithdrawalHistoryOptions.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Withdrawals/IGetWithdrawalHistoryRest.cs b/CryptoExchange.Net/SharedApis/V2/Withdrawals/GetWithdrawalHistory/IGetWithdrawalHistory.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Withdrawals/IGetWithdrawalHistoryRest.cs rename to CryptoExchange.Net/SharedApis/V2/Withdrawals/GetWithdrawalHistory/IGetWithdrawalHistory.cs diff --git a/CryptoExchange.Net/SharedApis/Interfaces/V2/Withdrawals/IWithdrawRest.cs b/CryptoExchange.Net/SharedApis/V2/Withdrawals/Withdraw/IWithdraw.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Interfaces/V2/Withdrawals/IWithdrawRest.cs rename to CryptoExchange.Net/SharedApis/V2/Withdrawals/Withdraw/IWithdraw.cs diff --git a/CryptoExchange.Net/SharedApis/Models/Options/Endpoints/WithdrawOptions.cs b/CryptoExchange.Net/SharedApis/V2/Withdrawals/Withdraw/WithdrawOptions.cs similarity index 100% rename from CryptoExchange.Net/SharedApis/Models/Options/Endpoints/WithdrawOptions.cs rename to CryptoExchange.Net/SharedApis/V2/Withdrawals/Withdraw/WithdrawOptions.cs