Can anyone show me your config.json of gaia hub? I want to run my own gaia hub, but I don't know how to configure

I’m new to blockstack development, and I want to run my own gaia hub, but I don’t know how to configure my config.json in gaia hub, like what to fill exactly in “readURL” and “awsCredentials”.

Can anyone tell me what should I fill?

Here’s a sample config file:

  "servername": "myHubName",
  "port": 3000,
  "driver": "aws",
  "bucket": "aws-bucket-to-store-in",
  "readURL": false, // you don't need to configure this
  "awsCredentials": { // you get these credentials from your AWS account
    "accessKeyId": "AWS-KEY-ID",
    "secretAccessKey": "AWS-SECRET-ACCESS-KEY"

  "argsTransport": {
    "level": "warn",
    "handleExceptions": true,
    "stringify": true,
    "timestamp": true,
    "colorize": false,
    "json": true

To get more info on obtaining AWS credentials, see here:

Also, you should run the develop branch of Gaia, and whitelist your Blockstack ID owner address(es) in the config.json file. For example:

   "whitelist": ["17ymqi1KpCNFYpkZ6Es3H9Pbhr1rCeYPr4", "1GaUxZtvbTVNw3P5Hd7vSsHNF6pLCbHCPh"]

Thank you very much! You are of great help!

Sorry I don’t quite understand, the doc here didn’t seem to give explanation about the “whitelist” scope, what’s its function?

The whitelist array lets you control who is allowed to write to your Gaia hub. Since you’re running your own, we highly recommend that you whitelist your Blockstack ID-addresses so only you can store data to it. If you don’t supply a whitelist, then anyone can write to your Gaia hub.

Could you tell me how to use my own Gaia hub?
I run it on localhost, and it passed the integration test, but I don’t know what else should I configure to make my private Gaia Hub work for my DAPP

Could you tell me how to use my private Gaia hub?
I run my own Gaia hub on localhost, and it passed all the integration test, What else configuration should I do to make it work?

As of now, the only way to authenticate that uses a private Gaia hub is through the CLI 's authenticator:

We’re working on increasing support for private Gaia hub authentication in the browser.

ok, thank you very much.

after running gaia hub in practice, I figure out the address is not the blockstack ID, rather, it is app specific ID, which was calculated from blockstack ID plus host name

1 Like

Regarding whitelist scope, I want to avail the gaia to group of users let’s say 10 K of users. And it is not practical to hard code their IDs in the array. Is there any other way to avail the gaia for such use case?

And it is not practical to hard code their IDs in the array.

This is more of a devops problem than a Gaia problem. For example, you could write a cron job that automatically re-generated your config file with the ~10K addresses. As another example, you could partition your set of ID-addresses into disjoint sets by inspecting the first few bytes of the address, and use a nginx front-end to route POST requests to the right hub.

1 Like