One way to make it more difficult for someone to copy the Typebot ID and access it via the Typebot viewer URL would be to obfuscate the ID with recursive multiple-arguments self-calling functions, so that the "end" ID wouldn't appear directly in the
script
tag.
Another way I can think of and that requires you to have full control over your website (frontend and backend) could be to call a server-side function (or a similar server-side solution) as the value of
typebot
in:
Typebot.initStandard({ typebot: "TYPEBOT_ID" });
I am not entirely sure the expected behavior would happen with the specific way I mentioned it, but I suspect a potential solution with server-side rendering.
Maybe even an extra Custom HTML Element on top of
<typebot-standard>
, with a server-side function call to retrieve the Typebot ID without exposing it in the final parent Custom HTML Element?
It could break the Typebot displayed to the user, but if it works, I suppose it's worth the try.
I'm still learning, so I'm curious to know if any of my suggestions doesn't make sense from a technical point of view.