Custom S3 API Call (Minio)

Hello everyone,

I would like to make a custom call to my self-hosted Minio to get a URL for a file in a bucket.

This is not part of the S3 node which is working fine for me, so I wanted to use the HTTP node to make this custom call but I can’t find a Predefined Credential Type where I can use the credentials I defined in my S3 nodes (AWS Credential Type doesn’t work).

And the problem is I can’t use Generic Credential Type as the identification to these kind of API use “AWS Signature” (not sure this is the official name but it is named like that in Postman).

Do you have any idea on how to make this custom S3 call?

Thanks in advance

Information on your n8n setup

  • n8n version:1.40.0
  • Database (default: SQLite):SQLite
  • n8n EXECUTIONS_PROCESS setting (default: own, main):…
  • Running n8n via (Docker, npm, n8n cloud, desktop app): selfhosted
  • Operating system: cloudron

Hey @Ilovechocolate, thanks for reaching out and being a part of the community - great username btw!

Have you tried setting up a Custom Auth credential? Reading through some conversation on authentication strategy, I don’t see an obvious reason why the generic credential types wouldn’t be an option.

Hello Ludwig,

Thank you for the post in stackoverflow it is interesting, in my case it might indicate I lack configuration on my server that is self-hosting Minio, i will investigate towards this.

But to respond to why I didn’t use generic authentification with “Custom Auth” is that when I analyzed the query made by Postman I thought that some scripts were executed to get the values to be put in the REST request, cf example of what is expected:

Best regards

Hi @Ilovechocolate! Postman wouldn’t execute any script by default unless you set them up yourself or you imported a collection that included one. Some default values for the HTTP headers are included, though.

Per their documentation they may add Authorization and X-Amz- prefixed fields to the headers (you can see those in your screenshot).

You should be able to construct the values for those within the your HTTP request node or the custom auth credential, itself.

Hope this helps!

1 Like

Thanks you Ludwig it does help a lot! I should be able to make that call now :smiley:

Best regards

1 Like