Unable to navigate in retool-embed because “allow-popups” not set in sandbox

  • Goal: Enable navigation from embedded Retool dashboard tiles to external system pages by resolving iframe sandbox restrictions.

  • Steps:

  1. Reproduction:

    • Access the embedded dashboard page
    • Click any navigation tile
    • Observe the sandbox restriction error
  2. Current Behavior:

    • Navigation works correctly when accessing dashboard directly
    • Navigation fails when dashboard is embedded in iframe
    • Error appears due to missing 'allow-popups' permission
  3. Attempted Solutions:

    • Added 'allow-popups' to sandbox attribute (unsuccessful)
  • Details:

  • Implementation: React component embedding Retool dashboard

  • Error Message: "Blocked opening '' in a new window because the request was made in a sandboxed frame whose 'allow-popups' permission is not set."

  • Impact: Core functionality broken - users cannot navigate between system pages

  • Current Configuration: Available in app export

  • Screenshots:

  • Attachments:

  1. Factory Trends Embedded JSON (App Export): Factory Trends - Embedded.json · GitHub

  2. Simplified RetoolPage Component Implementation: Factory Trends - Embedded.json · GitHub

  3. Related Retool Community Thread: Unable to submit form in retool-embed because "allow-forms" not set in sandbox

Package Version: @tryretool/retool-embed@^1.3.0

Hi @mazen,

Let me investigate this and get back to you with more information!

Thank you for the screen shots and the clear steps :raised_hands:

Hi @mazen,

If you are looking to navigate on button click to a non-Retool app you will need to not use our SDK and use a regular iframe.

There are some details on this from our docs here. This will allow for the sandboxed app to properly open a new tab with the specified URL.

You can configure this iframe new separate iframe to allow popups/new tabs.