Hi @apoorv-2204,
This is not an issue with the public app itself. The app is not loading because some of the queries require authentication. When a public URL is created, this type of warning message appears (as shown in the screenshot I shared).
Thatβs why your public app is not loading.
To verify, you can create a demo app, make it public, and then open its URL in incognito mode. You should see that the demo app works perfectly as expected.
So its a vendor lock in?
More specifically, there is no concept of current_user in public apps; all end users are anonymized. This means that resources which require individual authentication are not supported when shared publicly.
How to bypass this?
Hi @apoorv-2204,
Yes, you can bypass this issue using either of the following approaches:
- Use a Workflow if you are working with a REST API or any external resource (other than the Retool database).
- Alternatively, you can import your data into the Retool database and use it from there. In this case, the authentication error will not occur in the public app.
Let me know if you need help setting this up.
I want to use a graphql resource.
If you want to use a GraphQL resource , you can set it up through a Workflow , similar to how itβs used in the app.
You can then use the GraphQL query response from the workflow in exactly the same way as you are currently using it in the app.
The only change is that instead of calling the API directly, you will call it via the workflow and use its response in the app.
In brief:
User => public website => retool app( user email & password) => retool workflow => Our backend(returns session) => workflow => retool app => user.
Means the final build of retool app , will query retool workflows instead of resources , which are private??????
I am trying to create a public website with authentication. The Auth willbe against our backend.
Generally speaking, this is not a supported pattern and can even be seen as an attempt to skirt Retool's user pricing model. If you have a specific use case that requires offloading all authentication to a separate backend, I'd be happy to put you in touch with our Sales team to talk about upgrading to an Enterprise plan.

