NFT Details
The Seeker Genesis Token implements Token Extensions (formerly Token-2022).Transferability
The Seeker Genesis Token can only be transferred between a user’s wallet accounts on a permissioned basis within the Seed Vault Wallet. A transfer occurs when a user changes their primary account in the Seed Vault Wallet. The mint address of the SGT remains the same when it is transferred.Anti-Sybil Example: In-App Rewards Claim
Even with transferability, the Seeker Genesis Token is still useful as an anti-sybil measure. As an example, imagine an in-app rewards claim that wants to use the Seeker Genesis Token to limit the claim to once per Seeker device. To implement this, the app should check for 3 properties:- The connected wallet owns a Seeker Genesis Token.
- The user proves ownership of the wallet via signing a message.
- The Seeker Genesis Token has not been previously used to claim a reward (i.e check that its mint address has not been seen before).
Token Extensions
Seeker Genesis Token implements several extensions, notably:- Metadata Pointer
- Token Group Member and Pointer
Key Addresses
- Metadata Address:
GT22s89nU4iWFkNXj1Bw6uYhJJWDRPpShHt4Bk8f99Te - Group Address:
GT22s89nU4iWFkNXj1Bw6uYhJJWDRPpShHt4Bk8f99Te
View on an Explorer
- An individual Seeker Genesis Token and its extensions
- Seeker Genesis Token Metadata Account
Verifying Seeker Genesis Token Ownership
Use the@solana-mobile/skr-genesis-token package to check whether a wallet holds a Seeker Genesis Token. It verifies each token by its on-chain group membership and works with any mainnet RPC endpoint.
getSeekerGenesisTokens to get the mints rather than a boolean. A wallet can hold more than one SGT, so keep every mint: if one has already claimed, another may not have. It skips token accounts with a zero balance, which a wallet keeps after transferring its SGT out.
hasSeekerGenesisToken. To verify a single mint, use isSeekerGenesisToken. See the package README for the full API.
Code samples on this page are subject to the Apache 2.0 license.
