Custom Connector how to choose which JSON node to pull data from

I'm creating a custom connector and the JSON format follows this pattern {"code":0,"message":"success","data":[{"website":"https://redactedwebaddress","monitor_id":"15223002603958004","use_ipv6":false...............etc

 

When I attempt to parse the JSON it returns code and message data however I would like to start pulling from the data node, without caring about code, or success. Right now it messes up the columns

 

 

DOMO.log('metadata.report: ' + metadata.report);

if(metadata.report == 'Monitor List'){
monitorList();
}

//functions

function monitorList(){
DOMO.log('monitorList');
httprequest.addHeader('Authorization', 'authtoken ' + metadata.account.apikey);
processRecords('https://www.redactedwebaddress');
}

function processRecords(url){

var res = httprequest.get(url);
DOMO.log('res' + res);

datagrid.magicParseJSON(res);

}

 

 



**Make sure to like any users posts that helped you and accept the ones who solved your issue.**

Comments

  • ZMM
    ZMM Member

    Hello,

     

    I haven't actually built a custom connector (although we plan on doing this in the future), but it looks like you can write JavaScript code in them. I took a look at the documentation and if my assumption is correct, maybe try this?

    .....

    DOMO.log('res' + JSON.stringify(JSON.parse(res).data[0]));

    datagrid.magicParseJSON(JSON.stringify(JSON.parse(res).data[0]));

    .....

     

    That should select the first element of the data array which is a JSON object, convert it into a string and use that instead of the entire object.

     

    I hope that helped! I am curious if that works.

     

This discussion has been closed.