I'm trying to parse the response data from querying google's safe browsing api and the response seems to be a javascript prototype object, in which i'm having no luck trying to convert or parse to JSON. My ajax call is the following:
$( document ).ready(function() {
console.log( "ready!" );
//first fake links and event listeners
AddFakeLinks(faulty_links, curr_list);
//url checker action
$("#my_form").submit(function(event){
event.preventDefault(); //prevent default action
var api_url = "https://safebrowsing.googleapis.com/v4/threatMatches:find?"
var key = 'AIz________________________ns'
api_url += "key="
api_url += key
var payload =
{
"client":{
"clientId": "_________________.googleusercontent.com",
"clientVersion": "1.0.0",
},
"threatInfo": {
"threatTypes": ["MALWARE", "SOCIAL_ENGINEERING"],
"platformTypes": ["WINDOWS"],
"threatEntryTypes": ["URL"],
"threatEntries": [
{"url": "http://www.pitt.edu/"},
{"url": "http://www.exchange.pitt.edu/"}
]
}
};
$.ajax({
type: "POST",
url: api_url,
contentType: "application/json",
dataType: "json",
data: JSON.stringify(payload),
xhr: function(){
//upload Progress
var xhr = $.ajaxSettings.xhr();
if (xhr.upload) {
xhr.upload.addEventListener('progress', function(event) {
var percent = 0;
var position = event.loaded || event.position;
var total = event.total;
if (event.lengthComputable) {
percent = Math.ceil(position / total * 100);
}
//update progressbar
$("#upload-progress .progress-bar").css("width", + percent +"%");
}, true);
}
return xhr;
},
success:function (data) {
console.log(data);
},
error:function(jqXhr, textStatus, errorThrown) {
console.error(textStatus, errorThrown)
}
}).done(function(response){
$("#server-results").html(response);
console.log(response);
});
The console has the following output:

The network console is shown with response of 200 ok:

I'm not familiar with this API at all. But after looking at the documentation, the issue appears to be that there is no match for your request.
https://developers.google.com/safe-browsing/v4/lookup-api