poolMetaData.json insight ... JSON decode error from poolId

Hi Folks,
I have an issue with my poolMetaData.json file. The challenge in that I do not have download ability from my Block Producer - I do not have jumpserver ability - so I copy and paste the contents of my files. Everything is working fine in my stake pool except the poolMetaData.json file.

I get the error:

JSON decode error from poolId ‘’ when fetching metadata from ‘https://www.bs.com’ resulted in : Error in $: Failed reading: not a valid json value at ‘<!DOCTYPEhtml>’",“poolId”:

at https://smash.cardano-mainnet.iohk.io/api/v1/errors/mypoolID

Sadly, I can get two different consistent hash results depending upon how I do this - both give this result. So, I read the docs and see that I should download the file from my website, then hash the file.

poolMetaData.json contents
{“name”:“NoSpacesHere”,“description”:“Worlds Best Staking”,“ticker”:“BS”,“homepage”:“https://www.bs.com”}

Here are my steps and comments:
*I had windows hosting, but I have switched LINUX hosting. I’m using AWS LINUX …

  1. upload poolMetaData.json to the root of my website on LINUX hosting. Verify that the file exists
  2. Go to my Relay where I have access and wget https://bs.com/poolMetaData.json
  3. cardano-cli stake-pool metadata-hash --pool-metadata-file poolMetaData.json > poolMetaDataHash.txt
  4. COPY the contents of poolMetaDataHash.txt using copy and paste in windows to a new text file on my flashdrive called poolMetaDataHash.txt, then copy the hand made poolMetaDataHash.txt to cold machine
  5. update poll certificate and check Cardanoscan, hydra and what not …

The question. What are the limitations? Is there a date time stamp involved that I need to be aware of? I’ve been sucessful with copy and paste with every file except this one. Please help …

Thank you,


I am not able to open the metadata at this URL


On Producer navigate to the desired folder and type wget https://…. (Metadata URL) this will download the metadata file

Does the original .json file need to be on
The block producer?

My BP is blocked from all traffic - including myself. I will get the file onto the block server tomorrow morning and see if that works. Family obligations …

Thank you,

U will need to create the pool cert right?

I also use this to double check my json if I get stuck like this. Sometimes it is a simple typo that mucks it all up. https://jsonlint.com/

Hi Folks,
Everything looks correct. If I change the poolMetaData.json from https://www.bs.com to https://bs.com, do I need to wait for the next epoch for this to display the change? Will I get an error?

FYI, my website is not BS.com, BS stands for ‘Bull stuff’ just ot be used as an example.

Thank you

Check ur pool on pool.vet for errors

Hi Folks,
I noticed something subtle … The error points to <!DOCTYPE … I have a feeling that it is reading my index.html …

Which is correct - A, B, C or Other? I am using example A with no success … My file is named poolMetaData.json and is in the root of my website and recognized as a .json file.

{“name”: “MyPoolName”,“description”: “My pool description”,“ticker”: “MPN”,“homepage”: “https://myadapoolnamerocks.com”}

EXAMPLE B - trailing slash after .com:
{“name”: “MyPoolName”,“description”: “My pool description”,“ticker”: “MPN”,“homepage”: “https://myadapoolnamerocks.com/”}

{“name”: “MyPoolName”,“description”: “My pool description”,“ticker”: “MPN”,“homepage”: “https://myadapoolnamerocks.com/poolMetaData.json”}

Thank you

So long as the metadata URL is under 64 characters long and leads to a web page that produces this information https://git.io/JclOk

You’re all good.

When createing the pool registration certificate - use the complete URL to your .json file:

WRONG: --metadata-url https://mystaking.com
CORRECT: --metadata-url https://mystaking.com/poolMetaData.json