Seed and Hook Integrations
soToken integrations are seed modules and creator-authorized birth hooks. They are not alternate ERC-721 mint paths.
The direct path is simple: a wallet has enough token balance for the token interval, then calls claim(amount, context) on the soToken ledger. The ledger records a balance-backed object, stores its seed, and applies the launch's LOA/BOA support policy.
Integrations add richer birth sources without changing that rule. A game, route, quest, hook, frame, or partner app can provide the context that shapes an object birth, but the ledger still enforces token balance, interval, maximum supply, and ownership support.
Integration types
| Type | Chosen by | What it does |
|---|---|---|
| Seed module | Creator at token launch | Returns the object seed plus a birthPath label. |
| Birth hook | Creator after launch | Verifies an external action and calls claimFor(owner, amount, context) for the real recipient. |
Uniswap v4 is one seed or hook source. It is not the whole soToken model.
What an integration can do
An integration can:
- derive seeds from transaction context, game state, route data, signed actions, or hook callbacks
- label the birth path for app/indexer display
- call
claimForafter verifying a real user action - let creators give their communities custom birth mechanics
- keep rarity generation tied to the same on-chain renderer and layer rules
What an integration cannot do
An integration cannot:
- bypass the wallet's source-token balance requirement
- mint arbitrary unsupported supply
- turn a soToken object into a standard ERC-721
- make every swap or action qualify automatically
- replace creator choice over which hooks are approved
Authorization model
The protocol uses creator-controlled authorization on each ledger.
ledger.setBirthHook(hook, true);
ledger.setBirthHook(hook, false);
An approved hook can call:
ledger.claimFor(owner, amount, context);
claimFor still runs the same capacity checks as a direct claim. If the owner does not have enough active source-token support, the claim reverts.
Mirage-hosted hooks and seed modules should be reviewed before the public app promotes them. Creator-supplied hooks are possible, but the UI should label unreviewed hooks clearly.