watch a github repo for changes [using Github trigger]
get files that were created or changed [use Github node]
send this file to an API that accepts files as well as other params for content translation [use HTTP request to send to Taia.io]
I managed to get the github part working well. From there I take the file and store it using Write binary file. Then using Read Binary files I try to pass these files to the API using the HTTP Request node.
I figured out how to send binary files as part of the JSON/RAW parameters → Body Content type: Form-data Multipart → Send Binary data toggle (as described here HTTP Request - n8n Documentation
This is a bit tricky at the moment I am afraid as mixing binary and non-binary data isn’t currently supported in the HTTP request node (but the team is already working on making this possible in the next version of this node).
Currently, you would need to write a bit of code in the Function node for this, this post has a quick example:
Hi @MutedJam , thanks for sharing this solution. It took me a while to get everything set up but this answer led me to the right solution eventually that seems to work now!
The tricky part was getting the binary files across but I managed somehow.
Thanks so much!
Instead I expect the API to return a new project ID that was created with this post request and that is precisely what I can confirm when testing this endpoint on postman.
Now, I’m aware that this isn’t an n8n question specifically, and may be to do with the block itself, but I tried a bunch of solutions and none of them returns a valid response.
The first thing I notice is the Try / Catch is set to return nothing which could be why you are not seeing anything, The other missing bit is you are not setting a variable to contain the response from the request.
As a quick test I would probably do something like the below then check the browser console on run to see what it outputs you can then use the result in the return and all should be good.
thanks a bunch, somehow I didn’t see that function missing. This solves my issue!
Now off to figuring out how to store this data so I can later lookup the status of these translation projects.
When it comes to storing data there are a bunch of options, There is workflow static data which is handy for smaller amounts of data or for larger items you can use any of the database nodes we have. Personally I am a big fan of using Baserow or Redis.