Mint Manager

Mint Manager – Service that provides signed parameters required to interact with L1 and L2 minting contracts for subname creation.

Generate mint parameters and return a signed payload

post
Body
labelstring · min: 1 · max: 255Required

Label or subname to mint (e.g., "satoshi"). Must be 1-255 characters.

Example: satoshi
parentNamestring · min: 1 · max: 255Required

Parent ENS name under which the label is being minted (e.g., "universe.eth").

Example: universe.eth
expiryInYearsnumberOptional

Optional number of years the subname will be valid for. Used for expirable names. Defaults to 1 if not provided

Example: 1
minterAddressstringRequired

Ethereum address of the minter.

Example: 0x1234567890abcdef1234567890abcdef12345678
isTestnetbooleanOptional

Whether the operation is being performed on a testnet.

Example: true
ownerobjectOptional

Optional custom owner address of the subname (if different from minter).

Example: 0xabcdefabcdefabcdefabcdefabcdefabcdefabcd
Responses
200
Signed mint parameters ready to be used on-chain.
application/json
post
POST /api/v1/mint HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 196

{
  "label": "satoshi",
  "parentName": "universe.eth",
  "expiryInYears": 1,
  "minterAddress": "0x1234567890abcdef1234567890abcdef12345678",
  "isTestnet": true,
  "owner": "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd"
}
200

Signed mint parameters ready to be used on-chain.

{
  "content": {
    "label": "satoshi",
    "owner": "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd",
    "fee": "0.002",
    "price": "0.01",
    "parentNode": "0xabc123abc123abc123abc123abc123abc123abc123abc123abc123abc123abc1",
    "paymentReceiver": "0x1234567890abcdef1234567890abcdef12345678",
    "verifiedMinter": "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd",
    "signatureExpiry": 1726425612,
    "expiry": 4294967295,
    "fuses": 65536
  },
  "signature": "0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef1b"
}

Get estimated minting parameters and validation results

get
Query parameters
parentNamestring · min: 3 · max: 100Required

The parent name (e.g., domain) under which the label will be minted.

Example: example.eth
labelstring · min: 1 · max: 100Required

The label or subname to be minted under the parent name.

Example: subname
minterAddressstringRequired

Ethereum address of the minter.

Example: 0x1234567890abcdef1234567890abcdef12345678
isTestnetbooleanOptional

Indicates whether the operation is on a sepolia testnet.

Example: true
Responses
200
Estimated price, fee, and validation status for requested subname.
application/json
get
GET /api/v1/mint/estimate?parentName=example.eth&label=subname&minterAddress=0x1234567890abcdef1234567890abcdef12345678 HTTP/1.1
Host: 
Accept: */*
200

Estimated price, fee, and validation status for requested subname.

{
  "canMint": true,
  "estimatedPriceEth": 0.01,
  "estimatedFeeEth": 0.002,
  "isStandardFee": true,
  "validationErrors": [
    "SUBNAME_TAKEN",
    "MINTER_NOT_WHITELISTED"
  ]
}

Last updated