- Notifications
You must be signed in to change notification settings - Fork0
A Laravel Package for working with Fireblocks API
License
Developerayo/fireblocks-laravel-sdk
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A Laravel Package for working with Fireblocks API
PHP 8.1+ andComposer are required. Laravel 10+ or 11+ should be fine.
To get the latest version of Fireblocks Laravel SDK, simply require it
composer require developerayo/fireblocks-laravel-sdk
Or add the following line to the require block of yourcomposer.json
file.
"developerayo/fireblocks-laravel-sdk":"0.1.*"
You can publish the configuration file using:
php artisan vendor:publish --provider="Developerayo\FireblocksLaravel\ServiceProvider"
A configuration-file namedfireblocks.php
with some sensible defaults will be placed in yourconfig
directory:
<?phpreturn ['api_key' =>env('FIREBLOCKS_API_KEY',''),'secret_key' =>env('FIREBLOCKS_SECRET_KEY',''),'base_path' =>env('FIREBLOCKS_BASE_PATH','https://api.fireblocks.io/v1'),'is_anonymous_platform' =>env('FIREBLOCKS_ANONYMOUS_PLATFORM',false),'user_agent' =>env('FIREBLOCKS_USER_AGENT',null),'thread_pool_size' =>env('FIREBLOCKS_THREAD_POOL_SIZE',10),'default_headers' => [],'temp_folder_path' =>env('FIREBLOCKS_TEMP_FOLDER',null),'timeout' =>env('FIREBLOCKS_TIMEOUT',30),'connect_timeout' =>env('FIREBLOCKS_CONNECT_TIMEOUT',10),'verify_ssl' =>env('FIREBLOCKS_VERIFY_SSL',true),'debug' =>env('FIREBLOCKS_DEBUG',false),];
Open your .env file and add your api key, secret key, and base path like:
FIREBLOCKS_API_KEY=xxxxxxxxFIREBLOCKS_SECRET_KEY=xxxxxxxxFIREBLOCKS_BASE_PATH=https://sandbox-api.fireblocks.io/v1FIREBLOCKS_BASE_PATH=https://api.fireblocks.io/v1
<?phpuseFireblocks;$vaults = Fireblocks::getVaults();$transactions = Fireblocks::getTransactions();$assets = Fireblocks::getBlockchainsAssets();$externalWallets = Fireblocks::getExternalWallets();$internalWallets = Fireblocks::getInternalWallets();$exchangeAccounts = Fireblocks::getExchangeAccounts();$fiatAccounts = Fireblocks::getFiatAccounts();$networkConnections = Fireblocks::getNetworkConnections();$webhooks = Fireblocks::getWebhooks();$gasStations = Fireblocks::getGasStations();$nfts = Fireblocks::getNfts();$staking = Fireblocks::getStaking();...
<?phpuseFireblocks;// get all supported assets$assetsApi = Fireblocks::getBlockchainsAssets();$supportedAssets =$assetsApi->getSupportedAssets();foreach($supportedAssetsas$asset) {echo"Asset ID:" .$asset['id'] ."\n";echo"Asset Name:" .$asset['name'] ."\n";echo"Asset Type:" .$asset['type'] ."\n";}// get your vault account assets$vaultsApi = Fireblocks::getVaults();$vaultAssets =$vaultsApi->getVaultAccountAsset($vaultAccountId,$assetId);// create a new asset wallet$vaultsApi->createVaultAccountAsset($vaultAccountId,$assetId);
The SDK also supports magic property access:
<?phpuseFireblocks;$vaults = Fireblocks::vaults;$transactions = Fireblocks::transactions;$webhooks = Fireblocks::webhooks;$nfts = Fireblocks::nfts;$staking = Fireblocks::staking;// use them directly$vaultAccounts = Fireblocks::vaults->getPagedVaultAccounts();$txList = Fireblocks::transactions->getTransactions();
SDK currently supports multiple Fireblocks regions:
useDeveloperayo\FireblocksLaravel\Config;Config::US// https://api.fireblocks.io/v1 - (default)Config::EU// https://eu-api.fireblocks.io/v1Config::EU2// https://eu2-api.fireblocks.io/v1Config::SANDBOX// https://sandbox-api.fireblocks.io/v1
Please feel free to fork this package and contribute by submitting a pull request.
Why not star the github repo? I'd love the attention! Why not share the link for this repository on Twitter(X) or HackerNews? Spread the word!
Don't forget tofollow me on twitter!
Thanks!Shodipo Ayomide
The MIT License (MIT). Please seeLicense File for more information.
About
A Laravel Package for working with Fireblocks API
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.