Five Stars

Using tRESTclient to PATCH to a web based API

Hi,
I have a routine where i want to take data from a spreadsheet (just 4 columns) and load 3 of the columns as a PATCH to the ID found in the first column using JSON format. Unfortunately, the web service i am loading to has an unusual structure to receive JSON and so i don't think i can use the XML or JSON file build components - ideally, i need to create all of the JSON file myself manually.
I got this to work using POSTMAN when i wrote the JSON myself, but now i want to automate the job in Talend but unfrotunately the tREST component doesn't support PATCH (and PUT/POST won't work). The tRESTclient component does support PATCH, but doesn't give the option to manually input the body content.
I've tried playing around with a tJava component to manually input the body and put it into a context, but not had any luck.
This is an example of the JSON structure:
{
   "customInformation":
}
Can anyone suggest another approach that i might be missing?
Many thanks!
2 REPLIES
Five Stars

Re: Using tRESTclient to PATCH to a web based API

Anybody?
Essentially - i just need an equivalent of the tREST component, but that supports PATCH. POST and PUT are not viable options for me.
Five Stars

Re: Using tRESTclient to PATCH to a web based API

Just for anyone else encountering this issue.
I managed to create the JSON as a context using a tJava component, then passed this into the data flow using a tMap.
However, when sending to the API URL, the request was being recognised as a GET and not a PATCH, despite the PATCH option being selected. Not sure if this is a bug in Talend but we could see it in the API log clear as day.
Talend really seems to struggle with APIs that aren't part of the standard build (such as the salesforce ones).