Add support in the HTTP Request Node for the PROPFIND HTTP Method [GOT CREATED]

The idea is:

The PROPFIND http method can send a body with the request. However, this block in the HttpRequest node apparently restricts any body being added if it is not a PATCH, POST, PUT, or GET request:

My use case:

I am using a PROPFIND request to communciate with NextCloud. The Nextcloud node already uses PROPFIND for listing a folder, but it only queries the default props. When one supplies a body, they can get additional information.

Another option would be to extend the Nextcloud node, but the body content is fairly convoluted.

I think it would be beneficial to add this because:

  1. There’s a UX issue since one can add body content but it doesn’t actually do anything and n8n does not notify you of this.
  2. Making the HTTP Request node more functional seems like a good idea.I’m currently just using an Execute Command node to make a curl request.

Any resources to support this?

Are you willing to work on this?

Yeah, I can definitely do this, I just need some direction on the way you guys would like to add this. Possible ideas I had were:

  1. Add PROPFIND to the enum of HTTP methods ← I can see arguments against this though. I personally had no idea what PROPFIND was before today.
  2. Remove the ['PATCH', 'POST', 'PUT', 'GET'].includes(requestMethod) completely ← I have no idea if there are any bad ramifications or if it would lower the user experience
  3. Just add PROPFIND to the array (aka ['PATCH', 'POST', 'PUT', 'GET', 'PROPFIND'].includes(requestMethod)) ← this would solve my problem
  4. Disable the Send Body option when it’s not in the array of approved HTTP methods (along with some info on why it’s disabled). Or put some kind of warning there. <— really anything to let the user know it’s not going to work so they don’t have to dig into the actual n8n code to figure out why
1 Like

Yes, that would be helpful. Please add MKCOL, MOVE, COPY and many others also:
https://docs.nextcloud.com/server/latest/developer_manual/client_apis/WebDAV/basic.html#creating-folders-rfc4918

2 Likes

I just spent a day trying to figure out what is wrong with my apache configuration, until I found this thread.

First of all, I find n8n really awesome, especially that I can use it for free. I would like to make the suggestion to grey out features that are not working (yet), so users won’t get confused by http-errors.

For Nextcloud we direly need MKCOL and PROPFIND at least.

2 Likes

I support this. Popular and general protocols like Carddav or Caldav are not usable without PROPFIND, DELETE and REPORT.

1 Like

I have created a pull request to see if this can be implemented, as our alternative is using escaped curl which is less safe.

The pull request is available here.

1 Like

New version n8n@2.28.0 got released which includes the GitHub PR 32002.

1 Like