Skip to main content
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

1

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”
2

Enter your code and message below

Paste your 8-digit code and type the message you want to sign
3

Approve in actioncode.app

Go back to actioncode.app — you’ll see the signing request. Approve it with your wallet.
4

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.