Trying to get data from solis API

This is my final code. Some data belonging to the system still needs to be updated.

[
    {
        "id": "9a840be7e82e3376",
        "type": "tab",
        "label": "Solis API",
        "disabled": false,
        "info": ""
    },
    {
        "id": "7a2fd68cb2eb35fd",
        "type": "function",
        "z": "9a840be7e82e3376",
        "name": "apply headers",
        "func": "// MD5 the payload\nconst payload = JSON.stringify(msg.payload)\nconst md5Hash = crypto.createHash('md5').update(payload, 'utf8').digest();\nconst contentMD5 = md5Hash.toString('base64')\n\n// extract other params or defaults\nmsg.method = msg.method || 'POST'\nconst canonicalResource = msg.canonicalResource || \"/v1/api/inverterDetail\"\nconst apiSecret = msg.secret || 'test-key'   // UPDATE ME\nconst domain = msg.domain || 'blahblah.com'  // UPDATE ME\nconst apiId = msg.apiId || 'your-api-id'  // UPDATE ME\nconst contentType = 'application/json' // fixed\n\n// this might need some work - just hoping the UTC format works\nconst date = new Date().toUTCString()\n\n// Generate the HMAC SHA-1 signature\nconst stringToSign = [\n    msg.method,  // HTTP verb\n    contentMD5,\n    contentType,\n    date,\n    canonicalResource\n].join('\\n')\n\nconst hmac = crypto.createHmac('sha1', apiSecret)\nhmac.update(stringToSign)\nconst signature = hmac.digest('base64')\n\n// add headers\n// doc states: \"all interface requests require adding\" \n// * Content MD5\n// * Content Type\n// * Date\n// * Authorization\nmsg.headers = msg.headers || {}\nmsg.headers['Content-MD5'] = contentMD5\nmsg.headers['Content-Type'] = contentType\nmsg.headers.Date = date\nmsg.headers.Authorization = `API ${apiId}:${signature}`\n\n// set full URL\nmsg.url = `https://${domain}${canonicalResource}`\n\nreturn msg;",
        "outputs": 1,
        "timeout": "",
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [
            {
                "var": "crypto",
                "module": "crypto"
            }
        ],
        "x": 500,
        "y": 340,
        "wires": [
            [
                "ba2d79213a40cb8d",
                "3045441307964241"
            ]
        ]
    },
    {
        "id": "f05243cf398e86f6",
        "type": "inject",
        "z": "9a840be7e82e3376",
        "name": "UPDATE ME",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "method",
                "v": "POST",
                "vt": "str"
            },
            {
                "p": "canonicalResource",
                "v": "/v1/api/inverterDetail",
                "vt": "str"
            },
            {
                "p": "apiId",
                "v": "update me",
                "vt": "str"
            },
            {
                "p": "secret",
                "v": "update me",
                "vt": "str"
            },
            {
                "p": "domain",
                "v": "www.soliscloud.com:13333",
                "vt": "str"
            }
        ],
        "repeat": "30",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "{\"id\": \"update me\", \"sn\": \"update me\"}",
        "payloadType": "json",
        "x": 180,
        "y": 340,
        "wires": [
            [
                "7a2fd68cb2eb35fd"
            ]
        ]
    },
    {
        "id": "ba2d79213a40cb8d",
        "type": "http request",
        "z": "9a840be7e82e3376",
        "name": "",
        "method": "use",
        "ret": "obj",
        "paytoqs": "ignore",
        "url": "",
        "tls": "",
        "persist": false,
        "proxy": "",
        "insecureHTTPParser": true,
        "authType": "",
        "senderr": true,
        "headers": [],
        "x": 730,
        "y": 340,
        "wires": [
            [
                "b9092b8b5ffd31bf"
            ]
        ]
    },
    {
        "id": "3045441307964241",
        "type": "debug",
        "z": "9a840be7e82e3376",
        "name": "CHECK ME",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "true",
        "targetType": "full",
        "statusVal": "",
        "statusType": "auto",
        "x": 770,
        "y": 240,
        "wires": []
    },
    {
        "id": "b9092b8b5ffd31bf",
        "type": "debug",
        "z": "9a840be7e82e3376",
        "name": "Result",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "",
        "statusType": "auto",
        "x": 970,
        "y": 280,
        "wires": []
    }
]