Setting http request url parmaters from msg.payload values

Hello !

I created a following flow:

After the split node i use the change node where i want use the payload values as url parameters to make new API request. My change node:

My split node output debug console:
Screenshot split-node-output

I have made some mistakes in setting url parameters because debug node after change node shows that i set the url parameter not correctly.
Screenshot-url-output

How to set url parmetes correctly using the payload data to form correct url to make API requests.

The expected correct url example where is msg.paylod.id value in url:
https://localhost:4000/api/v1/clients/ee-dev:COM:10057662:ekukseireklient/tls-certificates

I would be very pleased if some one help what kind of mistake i have made in change node

Lauri-Alo Adamson

Does not work in a change node, you could paste it directly in the url field in the http request node

or in a change node use a JSONata expression eg.

[{"id":"d0885246.b8e748","type":"change","z":"c74669a0.6a34f8","name":"","rules":[{"t":"set","p":"url","pt":"msg","to":"\"https://localhost:4000/api/v1/clients/\" & payload.id & \"/tls-certificates\"","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":690,"y":3080,"wires":[[]]}]
"https://localhost:4000/api/v1/clients/" & payload.id & "/tls-certificates"

The change node does not do mustache rendering. however, you can enter the URL with mustache syntax in the http request node directly.

Alternatively, you can use a function node or JSONata in a change node to set up msg.url.

Also...
image
↑ you have msg twice (this will end up msg.msg.headers.Auth...)

Sadly i'm new in this world and this jsonata is not very familiar to me - how can use it.
This function node looks more understandable for example something like :

msg.url = 'https://localhost:4000/api/v1/clients/<msg.payload.id>/tls-certificates'
return msg;

Only trick how to insert set url with this msg.payload.id to form this url ?

msg.url = "https://localhost:4000/api/v1/clients/" + msg.payload.id + "/tls-certificates";
in a function node. But you are using a change node so it would be simpler there and no extra node needed. But you may do it anyway you wish.