Copy private file from one thing to another

I feel like i’m missing some obvious solution to this, but have exhausted all kinds of ideas.
I have an item, “template” that have a couple of values including a File (.docx etc. files) and a Screenshot (.jpg / .png).

I want the users to be able to copy a template thing including the two files that are private to the item.

Creating a new item like below simply references the File and Screenshot:

…the same if I use copy a list of items:

If I create an item an encode the files as base64 it only saves the string:

I can patch the new item by posting an encoded file like below (postman):

…but if I do the same from bubbles on api+backend workflow set to ignore privacy rules/can be run without auth, nothing happens.

So the question remains, how would one make a complete copy of an item including private files?

Thanks in advance!

Just bumping this in the hopes anyone has solved this challenge :slight_smile:

@simon7 In case you haven’t already, check out this part of bubble’s documentation: Introduction - Bubble Docs (screenshow below).

Let me know if you need any help with the steps below.

Workflow Steps:

  1. Create server-side action (api call) to get base64 from the private file saved in bubble database.
  2. Create server-side action (api call) to create new file (can be private as well based on how you set it up) from base64 from “Result of Step 1”.
  3. Create a new thing… (Template) : File = “Result of Step 2’s Url”
  4. Profit!

I’ve tried utilizing this but when I have an image, as an example, in the S3 attached to a data-object and have privacy settings on it. When trying to encode the image file as BASE64 I get a significantly truncated string. I’ve tried it with the same image on two different data structures but am not having luck with your example above. This is being run from a backend workflow ignoring privacy so it should have full access to that image.

When opening the image from the database filemanager view the S3 URL has parameters passed for the AWS access Key and a Signature and Expiration