iotaledger / Hub
A wallet management system for cryptocurrency exchanges and custodians
About ◈ Prerequisites ◈ Installation ◈ Getting started ◈ API reference ◈ Supporting the project ◈ Joining the discussion
About
Hub is a wallet management system for cryptocurrency exchanges and custodians. Through its application programming interfaces (APIs), Hub offers you an easy way to integrate IOTA into your application by allowing you to do the following:
- Create user accounts
- Manage users' IOTA tokens
- Keep a record of users' addresses
- Keep a record of users' transactions
This is beta software, so there may be performance and stability issues. Please report any issues in our issue tracker.
Prerequisites
To install Hub, you need one of the following:
- Docker
- A Linux operating system
Installation
For installation instructions, see the documentation portal.
Getting started
Depending on how you configured Hub, you can use either its gRPC or REST API to start creating new users. For a guide on using the gRPC API, see the documentation portal.
Getting started with the RESTful API
To create a new user, do the following:
curl http://localhost:50051 \
-X POST \
-H 'Content-Type: application/json' \
-H 'X-IOTA-API-Version: 1' \
-d '{
"command": "CreateUser",
"userId": "Jake"
}'
To generate a new deposit address for the user, do the following:
curl http://localhost:50051 \
-X POST \
-H 'Content-Type: application/json' \
-H 'X-IOTA-API-Version: 1' \
-d '{
"command": "GetDepositAddress",
"userId": "Jake",
"includeChecksum": "true"
}'
In the output, you should see a 90-tryte deposit address:
"address": "RDZVDZKRBX9T9L9XXONXDVJDRKYPAABWMQLORGCDCWHDDTSOPRZPCQB9AIZZWZAQ9NBZNVUUUSPQHRGWDYZUVP9WSC"
Note: In the database, addresses are always saved without the checksum.
API reference
For details on all available API methods, see the documentation portal.
Supporting the project
If you want to contribute to Hub, consider posting a bug report, feature request or a pull request.
See the contributing guidelines for more information.
Joining the discussion
If you want to get involved in the community, need help with getting setup, have any issues related with the library or just want to discuss IOTA, Distributed Registry Technology (DRT) and IoT with other people, feel free to join our Discord.