New Actions for Retool Storage 💪📂

Hi! We've been beefing up storage and would love feedback on the new actions we've added:

  • Rename a file
  • Set public access of a file
  • Move a file to another folder (tip: in FX mode, this can create folders that don't exist yet)
  • Get a list of folders (paginated)
  • Make a folder
  • Delete a folder
  • Rename a folder

Additionally, we're in the process of making the existing 'Get a list of file metadata' action more performant by paginating it. Currently, it allows setting page size (up to 1000) and page number.

We'd love feedback on how you're using this action and what additional filters or data would be useful for you. Ideas so far include:

  • total file count
  • total folder count
  • filter by a specific folder

If you still need to read all files, one workaround would be as follows:

  1. Retool Storage resource with ID "list_query" with "Get a list of file metadata" with Page Size 1000 and Page Number {{page_number}}

  2. Javascript Query with:

const accumulator = [];
let page_number = 1;
while (true) {
  const resp = await list_query.trigger({
    additionalScope: {
      page_number,
    },
  });
  // if there are no more entries, return everything
  if (!resp.length) {
    return accumulator
  }
  // otherwise append and continue
  accumulator.push(...resp);
  page_number++;
}

Separately, we've also paginated the Retool Storage viewer at /files, so it should be much more performant with many files.

Looking forward to getting feedback!

6 Likes