Hi everyone,
I’m migrating a Magic Link authentication flow from Phoenix LiveView to a SolidJS SPA using Ash TypeScript, and I’m stuck on retrieving the authentication token.
Background
-
Using AshAuthentication’s built-in magic link resources (which worked perfectly out-of-the-box with LiveView)
-
Now building a JS SPA (SolidJS) that needs to interact with the same backend via the RPC client
-
The LiveView implementation handled the token automatically, but I want to manage it manually in the SPA
What I’m trying to do
Recreate the same Magic Link flow in my SPA:
-
User requests a magic link via email
-
User clicks the link and is authenticated
-
The app receives and stores the authentication token for subsequent API calls
Current status
Successfully requesting the magic link using AshAuthentication’s request_magic_link action
Successfully calling the sign-in-with-magic-link action
Cannot retrieve the authentication token after sign-in to store it client-side
The problem
From what I can tell, the token appears to be returned via metadata in the response, but the RPC client doesn’t seem to expose this metadata (or I’m not accessing it correctly).
Question
-
How do I access response metadata (specifically the auth token) from AshAuthentication’s magic link sign-in action through the RPC client?
-
Is there a different pattern I should be following when using AshAuthentication with a JS SPA instead of LiveView?
Any guidance on properly handling AshAuthentication tokens in a decoupled frontend would be greatly appreciated!




















