future-private: add getSingleAccount request

This commit is contained in:
mahdi msr committed 2025-09-29 00:29:50 +03:30
1 parent 18966eaad8
commit 45a0195ec1
6 files changed
+332 -1

No files matched your search

+15 -1
View File
@@ -8,11 +8,12 @@ use Msr\LaravelBitunixApi\Requests\ChangeMarginModeRequestContract;
use Msr\LaravelBitunixApi\Requests\FlashClosePositionRequestContract;
use Msr\LaravelBitunixApi\Requests\FutureKLineRequestContract;
use Msr\LaravelBitunixApi\Requests\GetPendingPositionsRequestContract;
use Msr\LaravelBitunixApi\Requests\GetSingleAccountRequestContract;
use Msr\LaravelBitunixApi\Requests\Header;
use Msr\LaravelBitunixApi\Requests\PlaceOrderRequestContract;
use Psr\Http\Message\ResponseInterface;
class LaravelBitunixApi implements ChangeLeverageRequestContract, ChangeMarginModeRequestContract, FlashClosePositionRequestContract, FutureKLineRequestContract, GetPendingPositionsRequestContract, PlaceOrderRequestContract
class LaravelBitunixApi implements ChangeLeverageRequestContract, ChangeMarginModeRequestContract, FlashClosePositionRequestContract, FutureKLineRequestContract, GetPendingPositionsRequestContract, GetSingleAccountRequestContract, PlaceOrderRequestContract
{
private Client $publicFutureClient;
@@ -187,4 +188,17 @@ class LaravelBitunixApi implements ChangeLeverageRequestContract, ChangeMarginMo
return $response;
}
public function getSingleAccount(string $marginCoin): ResponseInterface
{
$queryParams = [
'marginCoin' => $marginCoin,
];
$response = $this->getPrivateFutureClient($queryParams, [])->get('account', [
'query' => $queryParams,
]);
return $response;
}
}
+2
View File
@@ -8,6 +8,7 @@ use Msr\LaravelBitunixApi\Requests\ChangeMarginModeRequestContract;
use Msr\LaravelBitunixApi\Requests\FlashClosePositionRequestContract;
use Msr\LaravelBitunixApi\Requests\FutureKLineRequestContract;
use Msr\LaravelBitunixApi\Requests\GetPendingPositionsRequestContract;
use Msr\LaravelBitunixApi\Requests\GetSingleAccountRequestContract;
use Msr\LaravelBitunixApi\Requests\PlaceOrderRequestContract;
use Spatie\LaravelPackageTools\Package;
use Spatie\LaravelPackageTools\PackageServiceProvider;
@@ -39,5 +40,6 @@ class LaravelBitunixApiServiceProvider extends PackageServiceProvider
$this->app->bind(PlaceOrderRequestContract::class, LaravelBitunixApi::class);
$this->app->bind(FlashClosePositionRequestContract::class, LaravelBitunixApi::class);
$this->app->bind(GetPendingPositionsRequestContract::class, LaravelBitunixApi::class);
$this->app->bind(GetSingleAccountRequestContract::class, LaravelBitunixApi::class);
}
}
@@ -0,0 +1,16 @@
<?php
namespace Msr\LaravelBitunixApi\Requests;
use Psr\Http\Message\ResponseInterface;
interface GetSingleAccountRequestContract
{
/**
* Get account details with the given margin coin
*
* @param string $marginCoin Margin coin (e.g., 'USDT')
* @return ResponseInterface
*/
public function getSingleAccount(string $marginCoin): ResponseInterface;
}