Skip to main content

Changelog

Updates, changes, and improvements at Retool.

Modules now support typed data inputs. This change makes your modules more reliable by catching mismatched data types early.

This change is currently rolling out on Retool Cloud, and it will be available in a subsequent edge release of Self-hosted Retool.

Previously, modules offered only a Data input for passing in property values. Now, you can choose from the following options when configuring a module input:

  • Any
  • String
  • Number
  • Boolean
  • Enum

Choose from String, Number, Boolean, or Enum for type validation on your module input. Selecting a Type enforces stricter validation rules and displays a warning if the input type does not match what you selected. You can also define additional characteristics about the input, such as options for Enum, and default values for all types.

Changing the type of the module input does not alter the actual value passed into the module—invalid values are still passed through as-is. The validation only affects how the input fields behave and display warnings.

If you set the Type to Any, Retool performs no validation on the module input.

Organizations on the Business or Enterprise plan can now restrict users from accessing specific app pages with per-page permissions. When configuring a permission group, you can now also specify permissions for each page.

This feature is currently rolling out on Retool Cloud. It will be available to organizations on Self-hosted Retool in a subsequent edge release.

Retool has rolled out unique identifiers (UUID) for app pages. If you use Source Control, Retool recommends that you create a new branch with no changes and push it to Source Control. If you use Retool Cloud or self-hosted Retool 3.191-edge or later, Retool automatically creates a migration commit to add UUIDs to each page. Once you merge this commit, you can successfully configure per-page permissions on your protected app.

If you are working on more than one branch before the UUID addition in version 3.191-edge, Retool runs the migration on each of those branches, and the branches will end up with different UUIDs. Make sure add UUIDs only once, do not override the UUIDs on the main branch after adding them. Doing so results in the inability to set per-page permissions, because the IDs initially set on main are the ones that Retool will use.

A preview release of Retool Agents is currently available to self-hosted organizations for deployment into a non-production environment. This preview release is intended to allow customers to preview and create proof-of-concepts that show how agents may work in their environment.

As Retool is continuously working to develop and improve Retool Agents to meet the high standards required for production environments, this preview release is not intended for production use and this build should not be deployed in an existing Retool installation or deployment. Retool recommends that self-hosted organizations create a new deployment in a private network alongside resources to which you intend to connect. Retool reserves the right to make changes to the agents preview without notification.

Retool Agents makes it simple for builders to automate work using large-language models (LLMs) by creating agents. Agents are systems that can complete or delegate tasks based on LLM reasoning.

Agents call tools—for example, workflows, functions, or other agents—to gather information and complete or delegate actions. When invoked, an agent:

  1. Receives a task, or input, as natural language. Tasks are provided as input to agents via written instructions.
  2. Uses an LLM to decide whether to respond to the input, get more information, or take action in another system.
  3. Provides the result of the tool call back to the LLM, and the LLM reasons in an open-ended cycle called an agentic loop without a pre-defined stopping point.
  4. Finally, the agent responds to your original message or question once it reaches a conclusion.

You can invoke an agent using any of the following trigger methods:

You can then test, deploy, evaluate, and monitor your agent directly from Retool.

Retool Agents is not currently available to Self-hosted Retool organizations.

Retool recently discovered a bug in certain versions of self-hosted Retool that affects SAML logins. This issue can occur after upgrading from an earlier version of self-hosted Retool to one of following affected versions:

ChannelAffected versions
Stable3.148.12-stable
Stable3.114.24-stable

Retool has released 3.148.13 and 3.114.24 on the Stable channel which resolves the issue.

If you have a deployment that currently runs an earlier version of self-hosted Retool, do not upgrade to an affected version.

Retool recently made changes that make it easier to review changes in source control. Retool now separates system-generated updates related to version upgrades into their own migration commit, so your pull requests are cleaner and easier to understand.

This feature is generally available on Retool Cloud. It is available in private beta to Self-hosted Retool organizations on edge version 3.203.0-edge or later, and will be generally available in an upcoming stable release. Self-hosted Retool organizations can reach out to support to enable this feature.

What's new

Instead of bundling migration changes with user changes, they now appear in a dedicated commit.

No setup needed—this happens automatically when you make commits.

This migration commit is required to ensure compatibility with the latest Retool features. Please do not revert or modify it.

Retool now supports an integration to the Tavily Search API. Use this integration to perform either general or news-specific web searches. You can choose to provide your own Tavily API key if you do not want to be subject to Retool's rate limits (100 calls per 24 hours) on Tavily.

An improved version of the File Input component for Mobile is currently available on Retool Cloud and on Self-hosted Retool 3.168.0 or later.

This includes:

  • Multi-file support – Users can now upload multiple files at once instead of being limited to a single file.
  • Blob URL exposure – The component now exposes blob URLs to the value property in the component state.