It is html encoded, which is different to being URI encoded. There is, AFAIK, no built in function to decode html entities. However, this answers provides a simple function:
https://stackoverflow.com/a/43282001/2681964
copied over the code snippet from the mentioned answer
function convertHTMLEntity(text){
const span = document.createElement('span');
return text
.replace(/&[#A-Za-z0-9]+;/gi, (entity,position,text)=> {
span.innerHTML = entity;
return span.innerText;
});
}
console.log(JSON.parse(convertHTMLEntity(your_encoded_json)));
However, this uses the DOM so can only be used in the browser.
Assuming that only the "
s are encoded, and you need to run this code in a non-browser environment, you can use
console.log(JSON.parse(your_encoded_json.replace(/"/g, '"')));