Summary
A workflow sends an email containing a link to a Retool Workflow webhook; when the recipient clicks it, the browser opens a raw JSON response. The goal is to return friendly HTML (or any non-JSON content) directly from the webhook to show a success/failure message, rather than relying on the existing workaround of a separate public Retool app.
AI Response
Returning non-JSON content (such as HTML or text/plain) directly from a Workflow webhook response is not currently supported — the webhook Response block always returns a JSON object. This was confirmed directly by Retool staff, who noted it is a requested feature that engineering is tracking, and multiple users have echoed the same need. Until custom content types are supported, the reliable pattern remains routing the click through a public Retool app (or another lightweight page) that calls the workflow and renders a user-friendly result, so the extra 'moving part' is expected for now rather than an avoidable misconfiguration.
Sources
ReTool Workflow - How to return a string (not json)
Retool staff confirm that returning a non-JSON (text/plain, and by extension HTML) response from a Workflow webhook is not currently possible but is a requested, in-progress feature — directly corroborating this limitation.
The Community Team is testing out a new automation. Let us know if it's helpful (or not) by leaving a
,
, or
. Or by marking this post as the "Solution"! Let us know if you have any feedback here. ![]()