POST JSON Object via HTTP REQUEST

Hello, I've been running a node-red app that sent a string URL via an HTTP REQUEST (that also included a SHA 256 encoded signature in the headers). Now I needed to send a request that had some nested parameters (array), started getting errors, and apparently the solution is to send it JSON object. I don't know how to proceed with this new approach. Thanks for your help.

[
    {
        "id": "cb5f584da001246b",
        "type": "function",
        "z": "5ef1a9875ae1c916",
        "name": "json",
        "func": "{\"account_id\": 555555,\n    \"pair\": \"USDT_BTC\",\n    \"position\": {\n        \"type\": \"buy\",\n        \"units\": {\n            \"value\": \"0.01\"\n        },\n        \"order_type\": \"market\"\n    },\n    \"take_profit\": {\n        \"enabled\": \"true\",\n        \"steps\": [\n            {\n                \"order_type\": \"market\",\n                \"price\": {\n                    \"value\": 10000,\n                    \"type\": \"bid\"\n                },\n                \"volume\": 100\n            }\n        ]\n    },\n    \"stop_loss\": {\n        \"enabled\": \"false\"\n    }\n}",
        "outputs": 1,
        "noerr": 6,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 510,
        "y": 240,
        "wires": [
            []
        ]
    }
]

A function node is used for javascript only.

You can use a template node and put the object in there, or define a variable and assign the object and return it.

const payload = {"account_id": 555555,
    "pair": "USDT_BTC",
    "position": {
        "type": "buy",
        "units": {
            "value": "0.01"
        },
        "order_type": "market"
    },
    "take_profit": {
        "enabled": "true",
        "steps": [
            {
                "order_type": "market",
                "price": {
                    "value": 10000,
                    "type": "bid"
                },
                "volume": 100
            }
        ]
    },
    "stop_loss": {
        "enabled": "false"
    }
}

msg.payload = payload
return msg

This will produce a json result, but I suspect this will only be the beginning of your journey, if the API needs all this information, it will probably wants a POST request with various headers.

Thanks, I understand I would need to use a template node to setup the JSON structure. Is the difference between sending a string query and json body via http post request is simply the format of the url?

Could someone share an example of sending a json via http request post?

Just attach with this payload to a http request node and set it to POST and check the output

Set the payload to an object and the http node will know what to do.