Skip to main content

Changelog

Updates, changes, and improvements at Retool.

The Offline Assets app setting and PDF Viewer component are now generally available on Retool Mobile. You can use the PDF Viewer to upload and view files from URL, Retool Storage, Offline Asset, or JavaScript.

Using the Offline Asset PDF source allows you to store PDF files that can be retrieved and viewed offline, or in situations where internet connectivity is limited.

You can now set an Alias to create a custom URL path for your webhook trigger. The resulting webhook URL is formatted as https://{domain}/url/{alias}. For example: https://example.retool.com/url/test-webhook.

You can also configure your custom URL path to include dynamic path parameters. This allows you to capture variable data directly from the request path and pass it to the workflow as input.

For example, you could set Alias to /orders/:id/status. A user would send a request to https://example.retool.com/url/my-custom-alias/orders/12345/status. The path parameter :id is dynamically resolved to 12345, and this value is then passed to the workflow as part of the execution input.

Retool made internal improvements that streamline the way we save and store your app saves, resulting in quicker app load times for users.

These improvements are automatically applied to customers on Retool Cloud. If your organization is self-hosted, run the following shell command in your backend container to remove old entries for apps that have been deleted and compact data from app edits older than a month:

./retool_backend --run-pagesave-compaction

Run this command as often as necssary to clean up your database.

You can also pass in an optional --concurrency parameter to specify the number of concurrent connections to the database in order to speed up the process. For example, --concurrency 4 opens 4 connections. The default value is 1.

You can now select multiple components and edit them at the same time using the Inspector. Select multiple components by clicking and dragging a selection box around them, or by using / + click.

When bulk editing components of the same type, such as two Buttons, you can edit all properties of the component. When bulk editing different types of components, such as a Button and a Text Input, you can edit the properties shared by the two components.

Properties that differ between components are identified as Mixed in the Inspector.

An improved version of the Scanner component for Retool Mobile is currently in private beta on Retool Cloud and on Self-hosted Retool 3.173.0 or later.

This includes:

  • The ability to restrict or select from multiple barcode symbologies to scan.
  • The ability to select between Manual or Automatic scan modes.
  • While scanning from the native app, there is a visual indication of what is being scanned (a bounding box) when hovering over a barcode, as well as a checkmark when a scan is successful.
  • Scanner V2 does not have the autoClose property.

You can now convert legacy single-page apps to multipage without needing to leave the IDE. Navigate to the Pages tab, and click Convert to multipage.

If you change your mind and want to undo this change, navigate to the Releases and history Releases and history tab and revert your app to the change before the Migrated app to multipage change.

Creating new single-page apps is no longer supported.

Retool's Slack integration now supports the files.getUploadURLExternal and files.completeUploadExternal APIs for uploading files. Slack ended support for their files.upload API on March 11, 2025, and this endpoint is no longer available in the Retool Slack integration.

For most users, no action is required to access the new APIs. For self-hosted organizations that set the SERVE_LOCAL_SPECS environment variable, you must upgrade to version 3.168.0-edge, patch release 3.148.2, or patch release 3.114.17 to access this change.

The workaround described in the Action Required: Update Slack queries using files.upload changelog entry is no longer required.

Retool now supports the Login Attempted Retool Event, which triggers after a user authenticates and before the login process is complete. You can use Login Attempted to trigger a workflow and execute custom logic, such as modifying user data or querying external resources.

Choose to present users with an error message, or redirect them to an app or URL.

You can only attach one enabled parent workflow to this Retool Event. Retool recommends that this logic remain lightweight, because this workflow runs synchronously in the login flow and blocks users from accessing their Retool account until the workflow finishes.

As of March 12, 2025, this workaround is no longer required. Refer to Updates to Slack connector to support file upload for more information.

Slack is ending support for their files.upload API on March 11, 2025. Refer to the Slack changelog for more information.

Retool is working to update our Slack integration as quickly as possible. In the meantime, if you need files.upload functionality, you can use a REST Query to utilize the new files.getUploadURLExternal and files.completeUploadExternal APIs.

This workaround is temporary, and Retool will restore access to file upload functionality within the Slack integration as soon as possible. Another changelog post will be made when the ability to upload files is restored. Other functionality in the Slack integration remains uninterrupted.