Hi @Anonymous ,
this is absolutely possible. Normal forms work like this: the id of the data is passed in as a get-parameter, usually "id=<aguid>". So, by just sending the user to the page and adding the "token" = id of the entry could help.
BUT: you have to give global read right to the neccessary table(s) as the user will not be signed in.
We did this in some projects like this:
We created an entitytable which holds the tokens. This is strictly spoken not really neccessary, but carries some advantages. When you really want to the user to enter the token you could make a single page with only one inputfield. Afer having input you could navigate to a page (could be the same one) and add the token as a parameter. In the liquid you read the token parameter from the request.params.query collection and try to find the tableentry with that token. Having found it, this "tokentable" should have a lookup to your real data and you should navigate to the entityform passing the lookupid as the paramater.
AGAIN: you have to grant gloabl read to the anonymous users for reading your data which could expose a security risk.
When you only want a few fields to be shown its from a securityperspective better top copy the data to the "token" table and have a "best before" date on the table, so that the liquid could deny access to the data when the date is later than that date 🙂
Hope this helps a little bit finding a solution.
Have fun,
Christian