mint_subnames
Bulk-create subnames under a parent ENS name. Designed for agent fleet deployment — create identities like agent001.company.eth, agent002.company.eth, etc. Each subname can have its own owner and records (addresses, text records).
Each subname mints in its own NameWrapper.setSubnodeRecord transaction (the mainnet NameWrapper has no multicall), so N subnames need N signatures. Records bundle into ONE Resolver.multicall transaction, but only for subnames minted to the calling wallet: the resolver lets only a subname's owner write its records, so subnames minted to other wallets are listed in recordsSkipped and their owners set records themselves. If the parent is unwrapped, the recipe prepends a one-time wrap setup (approve + wrapETH2LD) that keeps the parent's current resolver.
Returns a flat steps[] array — each step is one wallet signature, in order. Subnames are free to create; only gas costs apply.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| subnames | Yes | Array of subnames to create (max 50 per batch) | |
| parentName | Yes | Parent ENS name (e.g. "company.eth") | |
| walletAddress | Yes | Wallet address that owns the parent name | |
| allowOverwrite | No | Default false. If false, throws when any subname already exists. Set true to overwrite existing subnames (destructive — replaces current owner). |