This demo shows how message signing works with Action Codes. You’ll attach a message to your code and sign it with your wallet.
This only demonstrates the signing flow. No transactions are sent — you’re just signing a message.
How to use this demo
Get a code from actioncode.app
Open actioncode.app in your Solana wallet’s browser (Phantom, Solflare, etc.), connect your wallet, and tap “Get Code” Enter your code and message below
Paste your 8-digit code and type the message you want to sign
Approve in actioncode.app
Go back to actioncode.app — you’ll see the signing request. Approve it with your wallet.
See the result
Once approved, the signed message appears below
Codes expire in ~2 minutes. Get a fresh code right before using this demo.
What’s happening
This demo calls the Action Codes SDK:
// 1. Resolve the code to verify it
const actionCode = await client.resolve(code)
// 2. Attach the message
await client.attachMessage(code, message)
// 3. Wait for user approval
for await (const status of client.observeStatus(code)) {
if (status.signedMessage) {
// User signed the message!
}
}
For the full SDK reference, see SDK Methods.