BlockAPIWallet is an open-source, enterprise-grade blockchain wallet-as-a-service solution. It offers a secure, scalable, and API-driven platform for managing digital assets across multiple blockchains. Developed in Golang and based on trust-wallet wallet-core, BlockAPIWallet provides robust features and seamless integration with various blockchain networks.
- Enterprise-Grade Security: Utilizes MPC (Multi-Party Computation) technology for secure key management.
- API-Driven: Comprehensive APIs for creating and managing accounts, addresses, and transactions.
- Multi-Blockchain Support: Compatible with multiple blockchains including Bitcoin, Ethereum, Tron, Binance Smart Chain, Polygon, Solana, and more.
- Docker Containerized: Easily deployable in a Docker container for seamless integration with your infrastructure.
- Customizable Policies: Configure withdrawal, approval, and collection policies to meet your organization's needs.
- Smart Contract Interaction: Generate and deploy gasless smart contract addresses on supported chains.
- Docker
- Golang (1.16+)
- Make sure you have your preferred blockchain node(s) set up and accessible.
-
Clone the repository:
git clone https://github.com/yourusername/BlockAPIWallet.git cd BlockAPIWallet
-
Build and run the Docker container:
docker build -t blockapiwallet . docker run -d -p 8080:8080 blockapiwallet
-
Configure environment variables:
Create a
.env
file in the root directory with your configuration settings:PUBLIC_KEY=your_public_key SECRET_KEY=your_secret_key NODE_URL=your_blockchain_node_url
-
Authentication:
Use the public and secret keys to authenticate API requests. Concatenate them in the format
{public_key:secret_key}
, encode in base64, and include in the Authorization header. -
API Endpoints:
-
Create Account:
POST /api/v1/accounts
-
Generate Address:
POST /api/v1/addresses
-
Transfer Funds:
POST /api/v1/transactions
Refer to the API Documentation for a complete list of endpoints and usage instructions.
-
-
Supported Blockchains:
BlockAPIWallet supports multiple blockchains, with more being added continuously. Check the configuration file for the list of currently supported blockchains.
-
Policies:
Customize your policies for withdrawals, approvals, and collections by modifying the
config/policies.json
file.
We welcome contributions from the community. Please read our Contributing Guidelines before submitting a pull request.
BlockAPIWallet is licensed under the MIT License. See the LICENSE file for more details.
For questions, issues, or feature requests, please open an issue on GitHub or contact us at [email protected].
BlockAPIWallet - Secure, Scalable, and API-Driven Blockchain Wallet Solution.